2009-03-27 2 views
1

CSS 스타일 시트를 제거하고 JavaScript 파일을 통해 모든 속성을 설정했다면 가능합니까? 즉, JS DOM API를 통해 액세스 할 수없는 항목이 있습니까?JavaScript DOM에서 액세스 할 수없는 CSS 속성이 있습니까?

+0

Javascript를 사용하지 않는 사람들을 차단하는 데 신경 쓰지 않는다고해도 이것은 무서운 생각입니다. CSS는 Javascript보다 훨씬 빠르기 때문에 재미 없다. – Chuck

+0

또한, CSS와 JS의 차이가 같을 때, 저는 수 백 밀리 정도의 순서로 몰라요, 그렇게 생각하지 않습니다. – cdmckay

+0

반드시 그런 것은 아닙니다. 나는 최근에 사람들이 "영원히로드를 가져 갔다"고 불평 한 실제 페이지를 고치고있었습니다. Javascript로 무겁게 꾸며졌습니다. 나는 대부분의 자바 스크립트에 남겨 뒀지 만 동등한 CSS를 추가했고 페이지가 사용 가능해진 것처럼 보였다. – Chuck

답변

5

JS의 모든 요소는 JS를 통해 액세스 할 수 있지만 JS가 비활성화 된 사용자는 전혀 스타일을 얻을 수 없다는 점에 유의하십시오!

  • CSS는
  • 자바 스크립트를 스타일링을위한 꼭 필요하지 않는 병합하지 마십시오

기능을 변경합니다.

+2

그래,하지만 순전히 탐험적인 목적으로 그들을 합병 할 생각이야. 우리 모두가 JS에서 스타일 시트를 정의 할 것을 제안하려고하지는 않습니다. – cdmckay

+0

그건 괜찮아요, 그냥 제안;) – Seb

0

자바 스크립트에서 "인쇄"와 같은 다른 미디어 유형을 설정할 수 있는지 확실하지 않습니다.

[편집]
사실, 나는 다시 걸릴. cssText를 사용하여이를 수행 할 수 있습니다.

1

내가 생각할 수있는 것은 IE CSS 표현 (예 : IE6에서 PNG를 수정하는 데 일반적으로 사용되는 것과 같은)입니다.

그러나 유지 관리상의 이유로 콘텐츠 (HTML), 레이아웃 (CSS) 및 로직 (javascript)을 별도로 유지하려는 경우 일반적으로 좋은 생각이라고 생각하지 않습니다. 사람들이 javascript를 비활성화하여 사이트를 방문하는지는 말할 것도 없습니다.

+0

어,이 말에 동의하지 않습니다. – Shawn

+0

브라우저에서 지원하는 경우 액세스가 가능하다고 생각합니다. DOM 아기에 관한 것입니다. DOM은 여러분의 페이지입니다. 브라우저가 메모리에서 조작하고 화면에 렌더링하는 것입니다 ... –

+0

나는이 점에 동의합니다. 자바 스크립트에서 가능한 한 CSS 클래스를 설정해야합니다 (애니메이션과 같이 특정 속성을 조정해야하는 경우 제외). JavaScript의 코드가 적어지고 분리가 빨라졌으며 모든 스타일을 쉽게 찾을 수 있습니다. –

0

DOM-CSS 인터페이스에 대한 많은 흥미로운 정보는 W3C Document Object Model CSS2 Specification.에서 읽을 수 있습니다. CSS3의 경우에는 여전히 working on it입니다.

CSS DOM 스타일 시트를 통해 CSS 속성을 조작 할 수는 있지만 브라우저가 지원하는 내용에 따라 다릅니다.

0

나는 스타일 시트를 적용하는 것보다 JS를 실행하는 것이 스타일 시트를 적용하는 것보다 훨씬 느리고 브라우저 문제를 교차시키는 경향이 있다는 것을 확신한다.

0

"JS DOM API를 통해 액세스 할 수없는 것이 있습니까?"

나는 대답이 '예'라고 생각합니다. 아래를 참조

IE8 지금 불투명도 속성이 원하는 : -ms 필터 : "progid입니다 : DXImageTransform.Microsoft.Alpha (불투명도 = 50)"

그래서 사람이 동적으로 속성을 변경하는 방법을 알고 않습니다 Javascript DOM 액세스 (DHTML)?

촬영이 이루어 졌습니까?

+0

내가 설정할 수있는 필터 속성이 있다고 생각 - 또는 적어도 JS를 통해 추가 – Hugoware

1

CSS에서 완벽하게 지원 되더라도 여러 배경에 액세스 할 수 없다는 것이 판명되었습니다.

관련 문제