작동하는 기술은 요소의 계산 된 스타일을 보는 것입니다. 이것은 Opera와 Firefox에서 지원됩니다 (사파리에서는 정찰하지만 테스트하지는 않았습니다). IE (적어도 7)는 스타일을 얻는 방법을 제공하지만 계산 된 스타일이 아닌 스타일 시트에있는 것 같습니다. quirksmode에 대한 자세한 내용 : Get Styles
다음은 요소에 사용 된 글꼴을 가져 오는 간단한 함수입니다.
/**
* Get the font used for a given element
* @argument {HTMLElement} the element to check font for
* @returns {string} The name of the used font or null if font could not be detected
*/
function getFontForElement(ele) {
if (ele.currentStyle) { // sort of, but not really, works in IE
return ele.currentStyle["fontFamily"];
} else if (document.defaultView) { // works in Opera and FF
return document.defaultView.getComputedStyle(ele,null).getPropertyValue("font-family");
} else {
return null;
}
}
이에 대한 CSS 규칙이 다음과 같은 경우
#fonttester {
font-family: sans-serif, arial, helvetica;
}
그런 다음 helvetica가 설치되어 있으면 helvetica를 반환해야합니다. 그렇지 않으면 arial이며 마지막으로 시스템 기본 sans-serif 글꼴의 이름입니다. CSS 선언에서 글꼴 순서는 중요합니다.
당신이 시도 할 수있는 흥미로운 해킹은 컴퓨터에 설치된 글꼴을 감지하기 위해 많은 다른 글꼴로 숨겨진 요소를 많이 만드는 것입니다. 누군가 가이 기술로 멋진 글꼴 통계 수집 페이지를 만들 수 있다고 확신합니다.