"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > JavaScript를 사용하여 CSS 속성을 동적으로 추출하는 방법은 무엇입니까?

JavaScript를 사용하여 CSS 속성을 동적으로 추출하는 방법은 무엇입니까?

2024-11-08에 게시됨
검색:960

How to Extract CSS Properties Dynamically Using JavaScript?

JavaScript를 사용하여 CSS 속성 추출

HTML 문서에 첨부된 스타일시트를 탐색하면 페이지 요소 표시에 대한 귀중한 통찰력을 얻을 수 있습니다. 특히, 특정 CSS 속성을 읽는 기능은 동적 스타일 조작에 도움이 될 수 있습니다.

한 가지 접근 방식은 document.styleSheets 개체를 수동으로 검사하고 스타일 규칙을 구문 분석하는 것입니다. 그러나 이 방법은 노동 집약적이며 특히 특정 선택기를 대상으로 할 때 다루기 어려울 수 있습니다.

보다 직접적인 기술은 원하는 선택기와 일치하는 임시 요소를 만드는 것입니다. getCompulatedStyle()(최신 브라우저의 경우) 또는 currentStyle(Internet Explorer의 경우) 메서드를 사용하면 생성된 요소에 대한 CSS 속성의 계산된 값을 검색할 수 있습니다.

예를 들어 다음 코드를 사용하여 "layout" 클래스가 있는

의 색상 속성:
function getStyleProp(elem, prop) {
  if (window.getComputedStyle) {
    return window.getComputedStyle(elem, null).getPropertyValue(prop);
  } else if (elem.currentStyle) {
    return elem.currentStyle[prop]; // IE
  }
}
window.onload = function () {
  var d = document.createElement("div"); // Create div
  d.className = "layout"; // Set class = "layout"
  alert(getStyleProp(d, "color")); // Get property value
};

또는 인라인 스타일을 고려하지 않고 스타일시트에서 상속된 CSS 속성을 결정하려면 다음 함수를 사용할 수 있습니다.

function getNonInlineStyle(elem, prop) {
  var style = elem.cssText; // Cache the inline style
  elem.cssText = ""; // Remove all inline styles
  var inheritedPropValue = getStyleProp(elem, prop); // Get inherited value
  elem.cssText = style; // Add the inline style back
  return inheritedPropValue;
}

이러한 기술을 활용하여 개발자는 요소의 CSS 속성을 동적으로 조정하고 표시를 조작하며 페이지 스타일을 더 깊이 이해할 수 있습니다.

릴리스 선언문 이 글은 1729673789에서 재인쇄되었습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3