2012-01-23 3 views
0

아마도 CSS 조건부 주석이 어떻게 작동하는지 오해 할 수는 있지만 조건부 중간에있는 비트가 IE에만 ​​표시 될 것이라고 생각했습니다. 그러나 Chrome과 Firefox는 모두이를 평가하고 있으며 왼쪽 여백은 35px가 아니고 -20px가됩니다. 무엇이 누락 되었습니까?크롬은 IE라고 생각하고 조건부를 평가합니다

.policies li li { margin-left: -20px; } 
<!--[if IE]> 
.policies li { margin-left: 45px; } 
.policies li li { margin-left: 35px; } 
<![endif]--> 

답변

2

조건부 주석은 CSS가 아닌 HTML에서만 작동합니다. 일반적인 기술은 IE 용으로 별도의 외부 스타일 시트를로드하는 것입니다. 최근에 나는 IE1,= 8에 대한 하나의 코드를로드 한 다음 해당 스타일 시트 내에서 해킹을 사용하여 각각 IE 6/7/8을 대상으로합니다.

+0

Dur. 이제 나는 멍청한 느낌이 들었다. 나는 이것을 알고 있었다 ... 오랫동안 조건문을 할 필요가 없었다. – aslum

+1

땀을 내지 마십시오. 우리가 처음에 이것을 사용해야하는 것은 벙어리입니다. – JMM

1

조건부 주석에 모든 일반적인 CSS 파일 후 페이지에서 다음을 포함, styles-ie.css처럼 별도의 파일로

.policies li { margin-left: 45px; } 
.policies li li { margin-left: 35px; } 

를 넣고 포장 :

여기
<!--[if IE]> 

    <link to your styles-ie.css /> 

<![endif]--> 

Microsoft's reference이다.

관련 문제