W3C6 ¼Ó¼º°ª ÁöÁ¤, Ä«½ºÅ×À̵ù(Cascading)°ú Àü´ÞTrio ȨÆäÀÌÁö 

¸ñÂ÷

6.1 ¼³Á¤, °è»ê, ½ÇÁ¦°ª

»ç¿ëµµ±¸°¡ ¹®¼­¸¦ Çؼ®(parse)ÇÏ°í ¹®¼­°èÅë(tree)À» ±¸¼ºÇϸé, °èÅë¿¡¼­ °¢ ¿¤·¹¸àÆ®¿¡´Â ¸ñÇ¥ ¸Þµð¾Æ ŸÀÔ(media type)¿¡ Àû¿ëµÇ´Â °¢ ¼Ó¼º°ªÀ» ÇÒ´çÇØ¾ß ÇÑ´Ù.

¼Ó¼ºÀÇ ÃÖÁ¾°ªÀº ´ÙÀ½ ¼¼´Ü°è °è»ê °á°úÀÌ´Ù: ÀÌ °ªÀº ÀÌ ±Ô°ÝÀ» ÅëÇÏ¿© Á¤Àǵǰí("ÁöÁ¤µÈ °ª"), ±× ÈÄ ÇÊ¿äÇϸé Àý´ë°ªÀ¸·Î »êÁ¤µÇ°í ("°è»êµÈ °ª"), ÃÖÁ¾ÀûÀ¸·Î Áö¿ª ȯ°æÀÇ Á¦ÇÑ¿¡ µû¶ó º¯È¯µÈ´Ù("½ÇÁ¦°ª").

6.1.1 ÁöÁ¤µÈ °ª

»ç¿ëµµ±¸´Â ¿ì¼± ´ÙÀ½ ±â´Éµé(¿ì¼±¼øÀ§·Î)¿¡ ÀÇ°ÅÇÏ¿© ¼Ó¼º¿¡ ÁöÁ¤µÈ °ªÀ» ÇÒ´çÇÏ¿©¾ß ÇÑ´Ù:

  1. ¸¸ÀÏ Ä«½ºÄÉÀ̵å(cascade) °á°ú°¡ °ªÀ̸é Àû¿ëÇÑ´Ù.
  2. ±×·¸Áö ¾ÊÀ¸¸é, ¸¸ÀÏ ±× ¼Ó¼ºÀÌ Àü´Þ(inherit)µÈ °ÍÀ̸é, ¸ðü ¿¤·¹¸àÆ®ÀÇ °ªÀ» »ç¿ëÇÑ´Ù, ÀϹÝÀûÀ¸·Î´Â °è»êµÈ °ªÀÌ´Ù.
  3. ±×·¸Áö ¾ÊÀ¸¸é, ±× ¼Ó¼ºÀÇ ÃÖÃÊ°ªÀ» »ç¿ëÇÑ´Ù. °¢ ¼Ó¼ºÀÇ ÃÖÃÊ°ªÀº ¼Ó¼ºÀÇ Á¤ÀÇ¿¡ ¼³¸íµÇ¾î ÀÖ´Ù.

¸ðü¸¦ °¡Áö°í Àֱ⠾ʱ⠶§¹®¿¡, ¹®¼­°èÅëÀÇ ÃÖ»óÀ§(root)ÀÎ °æ¿ì´Â ¸ðü ¿¤·¹¸àÆ®·Î ºÎÅÍÀÇ °ªµéÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù; ÀÌ °æ¿ì ÇÊ¿äÇÏ´Ù¸é ÃÖÃÊ°ªÀÌ »ç¿ëµÈ´Ù.

6.1.2 °è»êµÈ °ª

ÁöÁ¤µÈ °ªÀº Àý´ëÀû(´Ù¸¥ °ª¿¡ »ó´ëÀûÀ¸·Î ÁöÁ¤ÇÏÁö ¾ÊÀº °Í, ¿¹·Î 'red' ¶Ç´Â '2mm') ¶Ç´Â »ó´ëÀû(´Ù¸¥ °ª¿¡ »ó´ëÀûÀ¸·Î ÁöÁ¤ÇÑ °Í, ¿¹ 'auto', '2em', '12%') ÀÏ ¼ö ÀÖ´Ù. Àý´ë°ª¿¡¼­´Â °è»êÀÌ ÇÊ¿ä ¾ø¾î °è»êµÈ °ªÀ» ãÀ» ÇÊ¿ä°¡ ¾ø´Ù.

ÀÌ¿Í´Â ´Þ¸®, »ó´ë°ªÀº °è»êµÈ °ªÀ¸·Î ȯ»êµÇ¾î¾ß ÇÑ´Ù: ¹éºÐÀ²Àº ÂüÁ¶ °ª(°¢ ¼Ó¼ºÀº ±× °ªÀ» ÁöÁ¤ÇÔ)¿¡ °öÇØÁ®¾ß ÇÏ°í, »ó´ëÀû ´ÜÀ§(unit: em, ex, px)¸¦ °®´Â °ªÀº Àû´çÇÑ ±Û²Ã(font) ¶Ç´Â Çȼ¿(pixel) Å©±â¸¦ °öÇÏ¿©, Àý´ë°ªÀ¸·Î ¸¸µé¾î Á®¾ßÇÏ°í, 'auto' °ªÀº °¢ ¼Ó¼ºÀÇ ÁÖ¾îÁø °ø½Ä¿¡ ÀÇÇÏ¿© °è»êµÇ¾î¾ß Çϸç, ¾î¶² Å°¿öµå(keyword)µé ('smaller', 'bolder', 'inherit')Àº ±×µéÀÇ Á¤ÀÇ¿¡ µû¶ó ´ëüµÇ¾î¾ß ÇÑ´Ù.

´ëºÎºÐÀÇ °æ¿ì, ¿¤·¹¸àÆ®¿¡ Àü´Þ(inherit)µÇ´Â °ÍÀº °è»êµÈ °ªÀÌ´Ù. ±×·¯³ª, ÀϺΠÁöÁ¤µÈ °ª(¿¹: 'line-height' ¼Ó¼ºÀÇ ¼öÄ¡ °ª)ÀÌ Àü´ÞµÉ ¼ö ÀÖ´Â ¼Ó¼ºµéµµ ÀÖ´Ù. ÀÚ½Ä(child) ¿¤·¹¸àÆ®¿¡ °è»êµÈ °ªÀ» Àü´Þ(inherit)ÇÏÁö ¾Ê´Â °æ¿ì´Â, ±× ¼Ó¼º Á¤ÀÇ¿¡ ¼³¸íµÇ¾î ÀÖ´Ù.

6.1.3 ½ÇÁ¦°ª

°è»êµÈ °ªÀº ¿øÄ¢ÀûÀ¸·Î Áï½Ã »ç¿ëÀÌ °¡´ÉÇϳª, »ç¿ëµµ±¸´Â ÁÖ¾îÁø ȯ°æ¿¡¼­ »ç¿ëÇÏÁö ¾Ê¾Æµµ µÈ´Ù. ¿¹¸¦ µé¾î, »ç¿ëµµ±¸´Â Å׵θ®(border)ÀÇ Á¤¼ö Çȼ¿(pixel) ³Êºñµé ¸¸À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ °è»êµÈ °ªÀÇ ±Ù»çÄ¡¸¦ °¡Áú ¼ö ÀÖ´Ù. ½ÇÁ¦ÀûÀÎ °ªÀº °è»êµÈ °ªÀ» ±Ù»çÄ¡È­ÇÑ ´ÙÀ½¿¡ Àû¿ëµÈ´Ù.

6.2 Àü´Þ(inheritance)

ÀϺΠ°ªµéÀº ¹®¼­°èÅë¿¡¼­ ±× ¿¤·¹¸àÆ®ÀÇ ÀÚ½Ä(child)¿¡ Àü´Þ(inherit)µÈ´Ù. °¢ ¼Ó¼ºÀº À̵éÀÌ Àü´ÞµÇ´Â°¡ ¾ÊµÇ´Â°¡¸¦ Á¤ÀÇÇÑ´Ù.

³»ºÎ¿¡ EM ¿¤·¹¸àÆ®°¡ ±ò·ÁÀÖ´Â H1 ¿¤·¹¸àÆ®°¡ ÀÖ´Ù°í °¡Á¤ÇÏÀÚ:

<H1>The headline <EM>is</EM> important!</H1>

¸¸ÀÏ »ö»óÀÌ ÀÌ EM ¿¤·¹¸àÆ®¿¡ ÁöÁ¤µÇÁö ¾Ê¾Ò´Ù¸é, °­Á¶ÇÑ "is"´Â ¸ðü ¿¤·¹¸àÆ®ÀÇ »ö»óÀ» Àü´ÞÇϹǷÎ, H1ÀÌ Ã»»öÀ» °¡Áö¸é, EM ¿¤·¹¸àÆ®´Â °°Àº û»öÀ» °¡Áø´Ù.

¹®¼­¿¡¼­ µðÆúÆ®("default") ½ºÅ¸ÀÏ ¼Ó¼ºÀ» ¼³Á¤Çϱâ À§ÇÏ¿©, Á¦ÀÛÀÚµéÀº ¹®¼­°èÅëÀÇ ÃÖ»óÀ§(root)¿¡¼­ ±× ¼Ó¼ºÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. HTML¿¡¼­, ¿¹¸¦ µé¾î, HTML ¶Ç´Â BODY ¿¤·¹¸àÆ®´Â ÀÌ ±â´ÉÀ» Á¦°øÇÒ ¼ö ÀÖ´Ù. ¸¸ÀÏ Á¦ÀÛÀÚ°¡ HTML ¹®¼­¿¡¼­ BODY¸¦ »ý·«ÇÏ´õ¶óµµ, HTML Çؼ®ÀÚ(parser)´Â ´©¶ôµÈ ű׸¦ ÀÎÁ¤ÇϹǷÎ, ÀÌ¿Í °°Àº ÀÛ¿ëÀº ÀϾ´Ù´Â Á¡¿¡ À¯ÀÇÇ϶ó.

¿¹Á¦:

¿¹¸¦ µé¾î, 'color' ¼Ó¼ºÀº Àü´ÞµÇ¹Ç·Î, BODY ¿¤·¹¸àÆ®ÀÇ ¸ðµç ÇÏÀ§(descendant)¿¡´Â °ËÁ¤('black') »ö»óÀÌ Àü´ÞµÈ´Ù:

BODY { color: black; }

ÁöÁ¤µÈ ¹éºÐÀ² °ªÀº Àü´ÞµÇÁö ¾Ê°í, ±× °è»êµÈ °ªµéÀÌ Àü´ÞµÈ´Ù.

¿¹Á¦:

¿¹¸¦ µé¾î, ÁÖ¾îÁø ´ÙÀ½ ½ºÅ¸ÀϽ¬Æ®¿¡¼­:

BODY { font-size: 10pt }
H1 { font-size: 120% }

±×¸®°í ÀÌ ¹®¼­ÀÇ ºÎºÐ¿¡¼­:

<BODY>
<H1>A <EM>large</EM> heading</H1>
</BODY>

H1 ¿¤·¹¸àÆ®ÀÇ 'font-size'¼Ó¼ºÀº °è»êµÈ °ª '12pt'(120% °öÇϱ⠸ðüÀÇ °ª 10pt)¸¦ °®´Â´Ù. 'font-size'ÀÇ °è»êµÈ °ªÀÌ Àü´ÞµÇ¹Ç·Î, EM ¿¤·¹¸àÆ®µµ °è»êµÈ °ª '12pt'¸¦ °®´Â´Ù. ¸¸ÀÏ »ç¿ëµµ±¸¿¡¼­ 12pt ±Û²ÃÀÌ ¾ø´Ù¸é, H1¿Í EMÀÇ ´Â µÑ ´Ù 'font-size'ÀÇ ½ÇÁ¦°ªÀº ¿¹Á¦¿¡¼­ '11pt'¸¦ °®´Â´Ù.

6.2.1 Àü´ÞµÈ('inherit') °ª

°¢ ¼Ó¼ºÀº Àü´ÞµÈ('inherit') ÁöÁ¤ °ªµµ °¡Áú ¼ö Àִµ¥, ÀÌ´Â, ÁÖ¾îÁø ¿¤·¹¸àÆ®¿¡¼­, ±× ¼Ó¼ºÀº ¿¤·¹¸àÆ®ÀÇ ¸ðüÀÇ ¼Ó¼º°ú °°Àº °è»êµÈ °ªÀ» °®´Â´Ù´Â ÀǹÌÀÌ´Ù. º¸Åë ÀÚµ¿ÀûÀÎ °ªÀ¸·Î »ç¿ëµÇ´Â Àü´ÞµÈ °ªÀº 'inherit'¸¦ ¸í½ÃÀûÀ¸·Î ¼³Á¤ÇÏ¿© º¸°­µÉ ¼ö ÀÖ´Ù.

¿¹Á¦:

¾Æ·¡ ¿¹Á¦¿¡¼­, »ö»ó('color')°ú 'background' ¼Ó¼ºÀÌ BODY ¿¤·¹¸àÆ®¿¡ ¼³Á¤µÇ¾îÀÖ´Ù. ¸ðµç ´Ù¸¥ ¿¤·¹¸àÆ®¿¡¼­, 'color' °ªÀº Àü´ÞµÉ °ÍÀÌ°í, ¹è°æÀº Åõ¸íÇÏ°Ô µÈ´Ù. ¸¸ÀÏ ÀÌµé ¸í·ÉÀÌ »ç¿ëÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®ÀÇ ÀϺÎÀ̸é, Èò ¹è°æ¿¡ °ËÁ¤ ÅؽºÆ®°¡ Àü ¹®¼­¸¦ ÅëÇÏ¿© ÀÛ¿ëµÈ´Ù.

BODY {
   color: black !important;
   background: white !important;
}

* {
   color: inherit !important;
   background: transparent;
}

6.3 @import ¸í·É

'@import' ¸í·ÉÀº »ç¿ëÀÚ°¡ ½ºÅ¸ÀÏ ¸í·É(style rule)µéÀ» ´Ù¸¥ ½ºÅ¸ÀϽ¬Æ®·Î ºÎÅÍ µµÀÔ(import)ÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù. @import ¸í·ÉÀº ½ºÅ¸ÀϽ¬Æ® ¾ÈÀÇ ¸ðµç ¸í·É ¼¼Æ®(rule set)ÀÇ ¾Õ¿¡ ¿Í¾ß ÇÑ´Ù. Å°¿öµå(keyword) '@import' ´ÙÀ½¿¡´Â ½ºÅ¸ÀϽ¬Æ®À» Æ÷ÇÔÇÏ´Â URIÀÌ ³ª¿Í¾ß ÇÑ´Ù. ¹®ÀÚ¿­µµ Çã¿ëµÇ´Âµ¥, ÀÌ´Â ±× ¾È¿¡ url(...)°¡ ÀÖ´Â °ÍÀ¸·Î °£ÁÖÇÑ´Ù.

¿¹Á¦:

´ÙÀ½ ÁÙµéÀÇ '@import' ¹®¹ýµé("url()"À» °¡Áø°Í°ú ´Ü¼øÇÑ ¹®ÀÚ¿­À» °¡Áø °Í)Àº ±× ÀÇ¹Ì¿Í ³»¿ë¿¡¼­ µ¿ÀÏÇÏ´Ù:

@import "mystyle.css";
@import url("mystyle.css");

»ç¿ëµµ±¸°¡ Áö¿ø ¾ÈÇÏ´Â ¸Þµð¾Æ(media) ŸÀÔ¿¡¼­ ÀÚ¿øÀ» Àоî Ç¥ÇöÇÏ´Â °ÍÀ» ¹æÁöÇϱâ À§ÇÏ¿©, Á¦ÀÛÀÚµéÀº ¸Þµð¾Æ¿¡ µû¸¥ µµÀÔ(@import) ¸í·ÉÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ÀÌ Á¶°ÇºÎ µµÀÔ(import)Àº URI ´ÙÀ½¿¡ Äĸ¶(,)·Î ºÐ¸®µÈ ¸Þµð¾Æ(media) ŸÀÔµé ÁöÁ¤ÇÑ´Ù.

¿¹Á¦:

´ÙÀ½ ¸í·ÉµéÀº, µµÀÔµÈ(imported) ½ºÅ¸ÀϽ¬Æ®°¡ °°Àº ¸Þµð¾Æ¿¡¼­ @media ¸í·É¿¡ ÀÇÇÏ¿© °¨½ÎÁø °Í°ú °°ÀÌ °£ÁֵǾî, °°Àº È¿°ú¸¦ °®Áö ¸¸, ÀÌ´Â »ç¿ëµµ±¸°¡ È¿°úÀûÀÎ ´Ù¿î·ÎµåÇϴµ¥ ³ë·ÂÀ» Àý°¨½ÃÄÑ ÁØ´Ù.

@import url("fineprint.css") print;
@import url("bluish.css") projection, tv;

¾î¶² ¸Þµð¾Æ ŸÀÔµéÀÌ ¾ø´Â °æ¿ìµµ, ±× µµÀÔ(import)Àº ¹«Á¶°ÇÀûÀÌ´Ù. ¸Þµð¾Æ(medium)¿¡ 'all'À̶ó´Â ÁöÁ¤Àº °°Àº È¿°ú¸¦ °®´Â´Ù.

6.4 Ä«½ºÄÉÀ̵å(cascade)

½ºÅ¸ÀϽ¬Æ®Àº Á¦ÀÛÀÚ, »ç¿ëÀÚ, »ç¿ëµµ±¸ÀÇ ¼¼°¡Áö ´Ù¸¥ ¿øõ(origin)À» °¡Áú ¼ö ÀÖ´Ù:

ÀÌ ½ºÅ¸ÀϽ¬Æ®ÀÇ ¼¼°¡Áö ¿øõµéÀº ±× ¹üÀ§¿¡¼­ Áߺ¹µÉ ¼ö ÀÖÀ¸¸ç, ±×·± °æ¿ì Ä«½ºÄÉÀ̵å(cascade)¿¡ µû¶ó Çؼ®µÈ´Ù.

CSS Ä«½ºÄÉÀ̵å´Â °¢ ½ºÅ¸ÀÏ ¸í·ÉÀÇ ¿ì¼±¼øÀ§¸¦ ÁöÁ¤ÇÑ´Ù. ¿©·¯ ¸í·ÉµéÀÌ Àû¿ëµÉ ¶§´Â, ±× Áß¿¡¼­ °¡Àå ¿ì¼±¼øÀ§°¡ ³ôÀº ÇÑ°¡Áö ¸¸ Àû¿ëµÈ´Ù.

µðÆúÆ®·Î, Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ® ¾ÈÀÇ ¸í·ÉµéÀº »ç¿ëÀÚ ½ºÅ¸ÀϽ¬Æ® ¾È¿¡ ÀÖ´Â ¸í·Éµéº¸´Ù ¿ì¼±¼øÀ§°¡ ³ô´Ù. ±×·¯³ª "!important" ¸í·ÉÀÌ ¿À¸é ¿ì¼± Àû¿ëµÈ´Ù. ¸ðµç »ç¿ëÀÚ°ú Á¦ÀÛÀÚ ¸í·ÉµéÀÌ ±× »ç¿ëµµ±¸ÀÇ µðÆúÆ® ½ºÅ¸ÀϽ¬Æ® ¾È¿¡ ÀÖ´Â ¸í·Éµéº¸´Ù ¿ì¼±¼øÀ§°¡ ³ô´Ù.

µµÀÔµÈ ½ºÅ¸ÀϽ¬Æ®µµ Ä«½ºÄÉÀ̵å(cascade)µÇ°í, ±×µéÀÇ ¿ì¼±¼øÀ§´Â µµÀÔ(import) ¼ø¼­¿¡ µû¶ó ´Ù¸£´Ù. ÁÖ¾îÁø ½ºÅ¸ÀϽ¬Æ®¿¡ ÁöÁ¤µÈ ¸í·ÉµéÀº Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ®·ÎºÎÅÍ µµÀÔµÈ(imported) ¸í·É·Î µ¤¾î¾º¿ö(override) Áø´Ù. µµÀÔµÈ ½ºÅ¸ÀϽ¬Æ®µéÀº ±× ÀÚü°¡, ¹Ýº¹ÀûÀ¸·Î, µµÀÔÇÏ°í Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ®µéÀ» µ¤¾î¾º¿ì±â(override)¸¦ ÇÒ ¼ö ÀÖÀ¸¸ç, °°Àº ¿ì¼±¼øÀ§°¡ Àû¿ëµÈ´Ù.

6.4.1 Ä«½ºÄÉÀ̵ù ¼ø¼­

¿¤·¹¸àÆ®/¼Ó¼º Á¶ÇÕÀÇ °ªÀ» ¾ò±â À§ÇÏ¿©, »ç¿ëµµ±¸´Â ´ÙÀ½ÀÇ Á¤·Ä ¼ø¼­¸¦ Àû¿ëÇÏ¿©¾ß ÇÑ´Ù:

  1. ±× ¸ñÇ¥ ¸Þµð¾Æ ŸÀÔ(media type)À» À§ÇÏ¿©, ¹®Á¦ÀÇ ¿¤·¹¸àÆ®¿Í ¼Ó¼º¿¡ Àû¿ëµÇ´Â ¸ðµç ¼±¾ðµéÀ» ã´Â´Ù. ¸¸ÀÏ °ü·Ã ¼±ÅÃÀÚ(selector)°¡ ±× ¹®Á¦ÀÇ ¿¤·¹¸àÆ®¿Í ÀÏÄ¡(matche)Çϸé, ¼±¾ðÀÌ Àû¿ëµÈ´Ù.
  2. ÀÌÂ÷ÀûÀ¸·Î ¿ì¼±¼øÀ§¿Í ¿øõ(origin)¿¡ µû¶ó ¼±¾ðÀ» Á¤·ÄÇÑ´Ù: Á¤»óÀûÀÎ ¼±¾ðµé¿¡¼­, Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ®´Â »ç¿ëÀÚ ½ºÅ¸ÀϽ¬Æ®¸¦ µ¤¾î¾º¿ì°í(override), »ç¿ëÀÚ ½ºÅ¸ÀϽ¬Æ®´Â ´Ù½Ã µðÆúÆ® ½ºÅ¸ÀϽ¬Æ®¸¦ µ¤¾î¾º¿î´Ù. "!important" ¼±¾ð¿¡¼­, »ç¿ëÀÚ ½ºÅ¸ÀϽ¬Æ®´Â Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ®¸¦ µ¤¾î¾º¿ì°í, Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ®´Â µðÆúÆ® ½ºÅ¸ÀϽ¬Æ®¸¦ µ¤¾î¾º¿î´Ù. "!important" ¼±¾ðÀº ÀϹÝÀûÀÎ ¼±¾ðÀ» µ¤¾î¾º¿î´Ù. µµÀÔµÈ ½ºÅ¸ÀϽ¬Æ®´Â, ±× °ÍÀ» µµÀÔÇÑ ½ºÅ¸ÀϽ¬Æ®¿Í, °°Àº ¿øõ(origin)À» °®´Â´Ù.
  3. ¼±ÅÃÀÚ(selector)ÀÇ Æ¯Á¤¼º(specificity)¿¡ ÀÇÇÏ¿© ÀÌÂ÷ÀûÀÎ Á¤·ÄÀÌ µÈ´Ù: ´õ ƯÁ¤Àû ¼±ÅÃÀÚ°¡ ´õ ÀϹÝÀûÀÎ ¼±ÅÃÀÚ¸¦ µ¤¾î¾º¿î´Ù. °¡»ó ¿¤·¹¸àÆ®(pseudo-element)µé°ú °¡»óŬ¶ó½º(pseudo-class)µéÀº °¢°¢ ÀϹÝÀûÀÎ ¿¤·¹¸àÆ®¿Í Ŭ¶ó½º¿Í °°ÀÌ °£ÁֵȴÙ.
  4. ÃÖÁ¾ÀûÀ¸·Î ÁöÁ¤µÈ ¿ì¼±¼øÀ§¿¡ ÀÇÇÏ¿© Á¤·ÄµÈ´Ù: ¸¸ÀÏ µÎ ¸í·ÉµéÀÌ °°Àº ¿ì¼±¼øÀ§, ¿øõ°ú ƯÁ¤¼ºÀ» °®´Â´Ù¸é, ³ªÁß¿¡ ÁöÁ¤ÇÑ °ÍÀÌ Àû¿ëµÈ´Ù. µµÀÔµÈ ½ºÅ¸ÀϽ¬Æ®¿¡¼­ ¸í·ÉµéÀº ±× ½ºÅ¸ÀϽ¬Æ® ÀÚü¿¡ ÀÖ´Â ¸í·Éµé ÀÌÀü¿¡ ÀÖ´Â °ÍÀ¸·Î °£ÁֵȴÙ.

°³º° ¼±¾ð¿¡ "!important" ¼³Á¤°ú´Â º°µµ·Î, »ç¿ëÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®º¸´Ù Á¦ÀÛÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®ÀÌ ³ôÀº ¿ì¼±¼øÀ§¸¦ °®´Â´Ù´Â ¿øÄ¢ÀÌ Àû¿ëµÈ´Ù. µû¶ó¼­ »ç¿ëµµ±¸°¡, »ç¿ëÀÚ·Î ÇÏ¿©±Ý ¾î¶² ½ºÅ¸ÀϽ¬Æ®ÀÇ ¿µÇâÀ» ÁßÁö½Ãų ¼ö ÀÖ´Â ´É·ÂÀ» Á¦°øÇÏ´Â °ÍÀÌ Áß¿äÇÏ´Ù. ¿¹: Ç®´Ù¿î ¸Þ´º(pull-down menu)¸¦ ÅëÇÏ¿©.

6.4.2 !important ¸í·É

CSS´Â Á¦ÀÛÀÚ¿Í »ç¿ëÀÚ»çÀÌÀÇ ½ºÅ¸ÀϽ¬Æ®µéÀÇ ´É·ÂÀÇ ±ÕÇüÀ» Çü¼ºÇϵµ·Ï ÀǵµÇÏ¿´´Ù. µðÆúÆ®·Î, Á¦ÀÛÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®¿¡ ÀÖ´Â ¸í·ÉµéÀÌ »ç¿ëÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®¿¡ ÀÖ´Â °ÍµéÀ» µ¤¾î¾º¿î´Ù. (À§ Ä«½ºÅ×ÀÌµå ¼¼°¡Áö ±ÔÄ¢À» ÂüÁ¶Ç϶ó).

±×·¯³ª, ±ÕÇüÀ» À§ÇÏ¿©, "!important" ¼±¾ð("!" Å°¿öµå¿Í ±× µÚ "important", ±× µÚ¿¡ ¼±¾ð)ÀÌ ÀϹÝÀûÀÎ ¼±¾ð¿¡ ¿ì¼±ÇÑ´Ù. Á¦ÀÛÀÚ¿Í »ç¿ëÀÚ ½ºÅ¸ÀϽ¬Æ® ¾çÂÊ¿¡¼­ "!important" ¼±¾ðµéÀ» °¡Áú ¼ö ÀÖ°í, »ç¿ëÀÚ "!important" ¸í·ÉÀÌ Á¦ÀÛÀÚ "!important" ¸í·ÉÀ» µ¤¾î¾º¿î´Ù. ÀÌ CSSÀÇ ±â´ÉÀº, »ç¿ëÀÚ¿¡°Ô Ç¥ÇöÀÇ Á¦¾î¿¡ Ư¼öÇÑ ¿ä±¸»çÇ×(Å« ±Û²Ã, »ö»ó Á¶ÇÕµé, µî)À» ÁöÁ¤ÇÒ ¼ö ÀÖ°Ô ÇÔÀ¸·Î¼­, ¹®¼­ÀÇ Á¢¼Ó¼ºÀ» °³¼±Çß´Ù.

ÁÖ¼®. ÀÌ´Â CSS1À¸·Î ºÎÅÍ º¯È­µÈ »çÇ×ÀÌ´Ù. CSS1¿¡¼­´Â, Á¦ÀÛÀÚÀÇ "!important" ¸í·ÉÀÌ »ç¿ëÀÚ "!important" ¸í·É¿¡ ¿ì¼±ÇÏ¿´¾ú´Ù.

¾à½Ä¼Ó¼º ¼±¾ð(¿¹: 'background')ÀÌ "!important" ¼öÁØ°ú °°°Ô Çϱâ À§ÇÏ¿©¼­´Â, ±× ¸ðµç ÇÏÀ§ ¼Ó¼ºµéÀÌ "!important"·Î ¼±¾ðµÇ¾î¾ß ÇÑ´Ù.

¿¹Á¦:

"!important" ¼±¾ð¸¦ Æ÷ÇÔÇÏ´Â ´ÙÀ½ ¿¹Á¦¿¡¼­ »ç¿ëÀÚÀÇ ½ºÅ¸ÀϽ¬Æ® ¾ÈÀÇ Ã¹¹ø° ¸í·É¿¡¼­, ÀÌ "!important" ¼±¾ðÀº Á¦ÀÛÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®(styles sheet) ¾ÈÀÇ ÇØ´ç ¼±¾ðÀ» µ¤¾î¾º¿î´Ù. µÎ¹ø° ¼±¾ð¿¡¼­µµ ¿ª½Ã "!important" Ç¥½ÃµÈ °ÍÀÌ Àû¿ëµÈ´Ù. ±×·¯³ª, »ç¿ëÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®¿¡¼­ ¼¼¹ø° ¸í·É¿¡¼­´Â "!important" Ç¥½ÃµÈ °ÍÀÌ Àû¿ëµÇÁö ¾Ê´Â´Ù. µû¶ó¼­ Á¦ÀÛÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®ÀÇ µÎ¹ø° ¸í·ÉÀº ±â´ÉÀ» »ó½ÇÇÑ´Ù(¾à½Ä¼Ó¼º¿¡ ½ºÅ¸ÀÏ ¼³Á¤ÀÌ ÀϾ´Ù). ¶ÇÇÑ, ¼¼¹ø° Á¦ÀÛÀÚ ¸í·Éµµ, µÎ¹ø° ¸í·ÉÀÌ "!important"À̹ǷÎ, µÎ¹ø° Á¦ÀÛÀÚ ¸í·É¿¡°Ô ¿ì¼±¼øÀ§¿¡¼­ ¹Ð¸°´Ù. ÀÌ´Â "!important" ¼±¾ðÀÌ Á¦ÀÛÀÚ ½ºÅ¸ÀϽ¬Æ® ¾È¿¡¼­µµ ±â´ÉÀ» °®´Â´Ù´Â °ÍÀ» º¸¿©ÁØ´Ù.

/* »ç¿ëÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®·Î ºÎÅÍ */
P { text-indent: 1em ! important }
P { font-style: italic ! important }
P { font-size: 18pt }

/* Á¦ÀÛÀÚÀÇ ½ºÅ¸ÀϽ¬Æ®·Î ºÎÅÍ */
P { text-indent: 1.5em !important }
P { font: 12pt sans-serif !important }
P { font-size: 24pt }

6.4.3 ¼±ÅÃÀÚ(selector)ÀÇ Æ¯Á¤¼º(specificity) °è»ê

¼±ÅÃÀÚÀÇ Æ¯Á¤¼º °è»êÀº ´ÙÀ½°ú °°´Ù:

a-b-c ¼¼°¡Áö ¼öÄ¡(Å« ±âÃÊÀÇ ¼öÄ¡ ½Ã½ºÅÛ)ÀÇ ´ÙÀ½°ú °°Àº °áÇÕÀÌ ±× ƯÁ¤¼º(specificity)À» ÁØ´Ù.

¿¹Á¦:

ÀϺΠ¿¹Á¦µé:

* {}                     /* a=0 b=0 c=0 -> ƯÁ¤¼º =   0 */
LI {}                    /* a=0 b=0 c=1 -> ƯÁ¤¼º =   1 */
UL LI {}               /* a=0 b=0 c=2 -> ƯÁ¤¼º =   2 */
UL OL+LI {}         /* a=0 b=0 c=3 -> ƯÁ¤¼º =   3 */
H1 + *[REL=up]{} /* a=0 b=1 c=1 -> ƯÁ¤¼º =  11 */
UL OL LI.red {}     /* a=0 b=1 c=3 -> ƯÁ¤¼º =  13 */
LI.red.level {}       /* a=0 b=2 c=1 -> ƯÁ¤¼º =  21 */
#x34y {}             /* a=1 b=0 c=0 -> ƯÁ¤¼º = 100 */

HTML¿¡¼­, ¿¤·¹¸àÆ®ÀÇ "style" ¾ÖÆ®¸®ºäÆ®ÀÇ °ªµéÀº ½ºÅ¸ÀϽ¬Æ® ¸í·ÉµéÀÌ´Ù. ÀÌ ¸í·ÉµéÀº ¼±ÅÃÀÚ(selector)¸¦ °¡Áö°í ÀÖÁö ¾ÊÁö¸¸, Ä«½ºÄÉÀ̵å(cascade) ±â´É¿¡¼­ Á¦ 3´Ü°èÀÇ ¸ñÀûÀ» À§ÇÏ¿©, ID ¼±ÅÃÀÚ°¡ ƯÁ¤¼º: a=1, b=0, c=0À» °®´Â °ÍÀ¸·Î °£ÁֵȴÙ. Á¦ 4´Ü°èÀÇ ¸ñÀûÀ» À§ÇÏ¿©, À̵éÀÌ ¸ðµç ´Ù¸¥ ¸í·Éµé ´ÙÀ½¿¡ ¿Â °ÍÀ¸·Î °£ÁֵȴÙ.

<HEAD>
  <STYLE type="text/css">
    #x97z { color: blue }
  </STYLE>
</HEAD>
<BODY>
  <P ID=x97z style="color: red">
</BODY>

À§ ¿¹Á¦¿¡¼­, P ¿¤·¹¸àÆ®ÀÇ »ö»óÀº Àû»öÀÌ´Ù. µÎ ¼±¾ðµé¿¡¼­ ƯÁ¤¼º(specificity)Àº °°Áö¸¸, "style" ¾ÖÆ®¸®ºäÆ®¿¡¼­ÀÇ ¼±¾ðÀÌ, Ä«½ºÄÉÀ̵ù ±ÔÄ¢ 4´Ü°è ¶§¹®¿¡, STYLE ¿¤·¹¸àÆ®¿¡ ÀÖ´Â °ÍÀ» µ¤¾î¾º¿ò(override)ÇÑ´Ù.

6.4.4 ºñ CSS Ç¥ÇöÀû ÈùÆ®ÀÇ ¿ì¼±¼øÀ§

»ç¿ëµµ±¸´Â ½ºÅ¸ÀϽ¬Æ® ÀÌ¿ÜÀÇ, ¿¹¸¦ µé¾î FONT ¿¤·¹¸àÆ® ¶Ç´Â HTMLÀÇ "align" ¾ÖÆ®¸®ºäÆ® µî, ´Ù¸¥ ¿øõ(source)µé·Î ºÎÅÍ Ç¥ÇöÀû ÈùÆ®¸¦ ¼±ÅÃÇÒ ¼ö ÀÖ´Ù. ÀÌ·± °æ¿ì, ºñ CSS Ç¥ÇöÀû ÈùÆ®´Â, ƯÁ¤¼º(specificity) zero(0)À» °®´Â, ÇØ´ç CSS ¸í·Éµé·Î Çؼ®µÇ¾î¾ß ÇÑ´Ù. ¸í·ÉÀº ´Ù¸¥ ½ºÅ¸ÀϽ¬Æ®ÀÇ ½ÃÀÛ À§Ä¡¿¡ ¿À°í, ±× µÚ¿¡ ¿À´Â ½ºÅ¸ÀϽ¬Æ® ¸í·É¿¡ ÀÇÇÏ¿© µ¤¾î¾º¿ö(override) Áú ¼ö ÀÖ´Ù´Â °ÍÀ» °¡Á¤ÇÑ´Ù.

ÁÖ¼®. ÀÌ ¿øÄ¢Àº, ÀÌ¿Í °°Àº Àüȯ ´Ü°è¿¡¼­, ½ºÅ¸ÀϽ¬Æ®µé°ú °°ÀÌ »ç¿ëµÇ´Â´Â ½ºÅ¸ÀÏÀû(stylistic) ¾ÖÆ®¸®ºäÆ®µéÀ» ½±°Ô »ç¿ëÇÏ°Ô ÇÑ´Ù.

ÁÖ¼®. CSS1¿¡¼­, ºñ CSS Ç¥ÇöÀû ÈùÆ®´Â ƯÁ¤¼º(specificity)°¡ '0' ÀÌ ¾Æ´Ï°í ''·Î ÁÖ¾î Á³¾ú´Ù. ÀÌ º¯°æÀº ƯÁ¤¼ºÀÌ '0'À» °®´Â °øÅë ¼±ÅÃÀÚÀÇ µµÀÔ¿¡ µû¸¥ °ÍÀÌ´Ù.


ÆäÀÌÁö ¸ÇÀ§·Î¸ÇÀ§ÀÌ Trio ȨÆäÀÌÁö ¹®¼­()´Â ÀÚÀ¯·ÎÀÌ ¿¬°á »ç¿ëÀÌ °¡´ÉÇÔ.
(¼öÁ¤ÀÏ )