in CSS

DOM과 CSS의 선택자

몇일째 JS와 DOM과 관련된 책을 읽고 있다. 아무래도 남은 휴가기간은 내일과 모래에는 다른 일을 해야할 것 같기에, 일일 풀타임 독서도 오늘로써 끝일 것 같다.

JS와 DOM에 관련된 국내 서적을 찾기는 생각보다 쉽지 않다. 대부분은 활용팁들의 예제를 중심으로 설명된 책들이라 기본 원리에 대한 깊숙한 접근(마치 수학 정석 교제에서 공식을 증명하는 단계와 같은)을 하고 싶던 나로써는 W3C 사이트로 발길을 돌릴 수 밖에 없다.

DOM(문서 객체 모델)에 접근할수록, CSS2의 selector(선택자)가 자꾸 떠오른다. CSS의 선택자는 인터넷 익스플러가 거의 지원하지 않는 요소이기에, 국내 CSS 활동가들은 물론이고 해외 CSS 활동가 사이에서도 거의 논의 대상에서 빠져 있는 것 같다.

CSS의 선택자를 통해서도 어느정도(완벽할 순 없고) 문서 객체 모델에 접근할 수 있을 것이다. JS와 DOM을 이용해서 각 개체의 스타일 속성을 변경하는 것보다는 CSS로 접근하는 편이 훨씬 편하고 쉽다고 생각한다. (문제는 역시 IE의 미비한 지원이겠지만..)

현재로써 CSS의 선택자에 대한 정보를 얻을 수 있는 거의 유일한 방법은 W3C에서 권고된 CSS 문서 뿐인 것 같다. (혹시 관련 정보를 다루고 있는 국내 서적이나 국내 사이트를 아시는 분은 정보 좀 공유해 주시길..)

CSS3의 선택자들은 CSS2의 선택자들보다 그 양에서만 2배 가까이 늘어난 것 같다.

댓글 남기기

  1. 앗. 선택자를 이렇게 사용할 수도 있군요. 좋은 링크 감사합니다~

    CSS의 핵심은 cascade랑, inherit이니 어쩜 선택자의 비중이 50%를 넘을 수도 있겠네요. ^^;;

  2. IE 가 다른 브라우저와 DOM 이 크게 달라지는 부분이 DOM-2 레벨 부터인 것 같더군요. 이걸 최근에 이벤트 핸들링 모델을 보다가 알게 되었는데.. 옛날 IE 5.5 이 나올 시점에.. IE 에서 이벤트 핸들링 함수 이름이 w3c 와 다르게 되던 때가 바로 DOM 이 어긋나기 시작한 때 같더군요. 그 때의 역사를 잘 몰라서 어떤지는 모르겠지만, DOM-1 레벨은 잘 호환되면서 DOM-2 레벨의 CSS 속성에 관한 값을 찾을려고 하면 브라우저 끼리 방법이 달라서 그냥 포기했던 적이 있습니다.

    아마 마소는 그 때, w3c 에서 DOM 구현 문서가 너무 늦는다고 판단한건지 독자적으로 진행한 것 같습니다. 추측이므로 실제로는 어떨지 모릅니다만..

    css2 는 안쓰다가 쓸려면 참 어렵더군요. 머리 속이 안 돌아가요. :before :after 는 그나마 낫지만, 안쓰다보면 정말 나중엔 필요한 곳에 일부러 빙 둘러서 먼 길을 선택하곤 하죠.. 자식 선택자 중에서 > 나 + 같은 것도 결국 안쓰다보면 잊어먹더군요. 브라우저 호환성 문제나 다른 이유 때문에 안쓰는 것도 있겠지만, 아무래도 CSS 는 ‘언어’로서는 좀 다가가기 꺼려지는 면이 있지 않나 생각 중입니다.

    p.s
    책 나온지 오래되었지만, ‘캐스케이딩 스타일 시트 핵심 가이드’ 라는 번역서가 한빛미디어에서 나와 있습니다. 반쯤 읽다 말았는데.. CSS 의 기본부터 기초적인 부분까지는 그럭저럭 괜찮은 책입니다. 학술적이라 지루해서 문제지만…

  3. 정말 아까운 기능입니다.
    IE에서는 쓸 수가 없으니 그냥 묵혀가고만 있죠.
    이 기능만 지원해도 코딩량이 더 줄어들텐데 말이죠.

  4. IE7이 공개되면, MS에서 구버전의 브라우저와의 호환성을 위해서 보완 스크립트를 공개하면 좋겠네요.

    그 방법 말고는 현재로써 어쩔 수 없는.. ㅠ.ㅠ