본문 바로가기

Web/Css

[펌]IE 핵 (css hack)

출처 | http://blog.naver.com/gjsl19/120194908595


IE 핵 (css hack)





IE7. IE8. IE8+9

 

프로퍼티의 속성값 뒷부분에 \0/IE8 를 붙이면 IE8 에서 적용이 됩니다.

프로퍼티의 속성값 뒷부분에 \0/IE9 를 붙이면 IE9에서 적용이 됩니다.
프로퍼티의 속성값 뒷부분에 \0/IE8+9 를 붙이면 IE8과 IE9 모두 적용이 됩니다.
 
ex) div {width:100px \0/IE8+9; height:50px  \0/IE8+9;}

 

 

IE8 (속성핵)

 *이거 잘 안됨

프로퍼티의 속성값 앞부분에 (/*\**/) 를 붙이면 IE8에서만 적용이 됩니다.

 

ex) div {width:/*\**/100px; height:/*\**/50px;}

 

 

IE8

 *이거 잘 안됨

 프로퍼티 마지막에 \9 를 붙인다. (단 IE6~7 에서도 인식이된다.) 

 

ex) div {width:100px; height:50px\9;}

 

 

IE7. IE8. IE9

 *이거 잘 안됨

 셀렉트 앞에 html>body를 붙이면 IE7, 8, 9에서 적용이 됩니다.

 

ex) html>body div{width:100px; height:50px;}

 

 

IE6. IE7(dot hack)

 

 프로퍼티의 가장 앞부분에 닷(.)를 붙이면 IE6, 7에서만 적용이 됩니다.

 

ex) div{.width:100px; .height:50px;}

 

 

IE7

 * ie7 다른 핵 안될때 이게 젤 잘먹는듯

 선택자 앞에 *+html body 또는 *:first-child+html 을 붙이면 IE7 or Opera 에서 적용이 됩니다.

 

ex) *+html body div{width:100px; height:50px;}/* IE7, OPERA 적용 */
      *:first-child+html div{width:100px; height:50px;}/* IE7 적용 */

 

IE7(star hack)

 

 선택자 앞에 별(*)를 붙여준다.

 

ex) *div {width:100px; height:50px;}

 

 

IE6(star hack)


 선택자 앞에 *html를 붙여준다.


ex) *html div {width:100px; height:50px;}           


IE6(underscore hack)


 속성 앞에 언더바(_)를 붙여준다.


ex) div {_width:100px; _height:50px;}   


:root 가상클래스 핵 

*핵 적용해도 안될때 :root를 붙이고 다른 핵을 같이 넣으면 적용잘될 때가있음..

 셀렉터 앞에 :root 가상클래스 삽입. 모질라, 파이어폭스, 맥IE5, 사파리등 가상클래스를 지원하는 브라우저에 적용.

 

ex) :root div {width:100px; height:50px;}