IE에는 !important를 인식하는 버그가 있기 때문에 현재 대부분의 웹 표준 디자이너들은 이 버그를 사용하여 IE 및 FF와 호환되게 만들지만 IE7.0에서는 이 버그를 수정했기 때문에 문제가 다시 발생했습니다. IE.7.0 동시에 ie6.0과 ff도 호환되나요? "위에 정책이 있고 아래에 대책이 있다"는 말이 있듯이 외국 웹페이지 표준 디자이너들은 CSS 필터(CSS 해킹이 아님)를 사용합니다. ie7.0, ie6.0 및 ff와 호환됩니다. 다음은 외국 웹사이트에서 번역한 내용입니다.
다음과 같이 새 CSS 스타일을 만듭니다.
#item {
너비: 200px;
높이: 200px;
배경: 여기에 lang 속성을 추가합니다(중국어:
). div 요소:
*:lang(en) #item{
background:green !important
}
이 작업은 !important로 원본 CSS 스타일을 덮어쓰기 위해 수행됩니다. :lang 선택기 ie7.0에서는 지원하지 않으므로 이 문장은 사용되지 않습니다. 어떤 효과도 있으므로 ie6.0에서도 동일한 효과를 얻을 수 있지만 안타깝게도 Safari에서는 이 속성을 지원하지 않으므로 다음 CSS 스타일이 필요합니다. 추가됨:
#item:empty {
background: green !important
}
: 빈 선택기는 CSS3 사양이지만 Safari에서는 이를 지원하지 않습니다. 사양에 따르면 이 요소는 현재 녹색으로 표시됩니다. 이제 ie 버전 이외의 브라우저에서도 작동하며 다음 브라우저 및 운영 체제에서 테스트를 통과합니다.
ie7 베타 2 미리보기/win
ie5.01+/win
firefox 1.5/win
opera 8.5/win 및 linux
netscape 7.01, 8/win
mozilla 1.7.12/win 및 linux
safari 2/mac
firefox 1.0.4/linux
epiphany 1.4.8/linux
galeon 1.3.20/linux
저자에 따르면 이것은 사실 핵이 아니라 필터여야 하는데 이게 가장 중요한 것은 아닌 것 같습니다. 왜냐하면 이 방법을 통해 우리는 IE6.0, IE7.0과 다른 브라우저 사이의 호환성 문제를 다시 한 번 해결했고, 그 방법은 사용 방법: lang-filter는 앞으로 유용할 것입니다.