W3C5 ¼±ÅÃÀÚ(selector)Trio ȨÆäÀÌÁö 

¸ñÂ÷

5.1 ÀÏÄ¡ ÆÐÅÏ(pattern matching)

CSS¿¡¼­, ÀÏÄ¡ ÆÐÅÏ ¸í·ÉµéÀº ¹®¼­°èÅë(document tree)¿¡¼­ ¿¤·¹¸àÆ®¿¡ ¾î¶² ½ºÅ¸ÀÏ(style) ¸í·ÉÀ» Àû¿ëÇÒ °Í Àΰ¡¸¦ °áÁ¤ÇÑ´Ù. ¼±ÅÃÀÚ(selector)·Î ºÒ¸®¿ì´Â À̵é ÆÐÅÏÀº ´ÜÀÏ ¿¤·¹¸àÆ® À̸§¿¡¼­ ºÎÅÍ ÈνŠ´õ º¹ÀâÇÏ°í dzºÎÇÑ ÆÐÅϵéÀÌ µÉ ¼ö ÀÖ´Ù. ¸¸ÀÏ ÆÐÅÏ ¾ÈÀÇ ¸ðµç Á¶°ÇµéÀÌ ¾î¶² ¿¤·¹¸àÆ®¿¡ ¸Â´Ù¸é, ±× ¼±ÅÃÀÚ´Â ±× ¿¤·¹¸àÆ®¿Í ÀÏÄ¡(match)ÇÏ´Â °ÍÀÌ´Ù.

¼±ÅÃÀÚ ¾ÈÀÇ ¹®¼­¾ð¾î ¿¤·¹¸àÆ® À̸§ÀÇ ´ë¼Ò¹®ÀÚ ±¸º°¼º(case-sensitivity)Àº ¹®¼­¾ð¾î¿¡ µû¶ó ´Ù¸£´Ù. ¿¹¸¦ µé¾î, HTML¿¡¼­, ¿¤·¹¸àÆ® À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾ÊÀ¸³ª, XML¿¡¼­´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÑ´Ù.

´ÙÀ½ Å×ÀÌºí¿¡ CSS2 ¼±ÅÃÀÚ ¹®¹ýÀ» ¿ä¾àÇÏ¿´´Ù:

Pattern ÀÇ¹Ì Ç׸ñÀÇ ±â¼ú
* ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ. °øÅë ¼±ÅÃÀÚ
E E ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ ÇÔ(À̸¦Å׸é ŸÀÔ EÀÎ ¿¤·¹¸àÆ®). ŸÀÔ ¼±ÅÃÀÚ
E F E ¿¤·¹¸àÆ®ÀÇ ÇÏÀ§(descendant) ÀÎ F ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ. ÇÏÀ§ ¼±ÅÃÀÚ
E > F ¿¤·¹¸àÆ® EÀÇ ÀÚ½Ä(child) ÀÎ F ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ. ÀÚ½Ä ¼±ÅÃÀÚ
E:first-child E°¡ ±× ¸ðüÀÇ Ã¹¹ø° ÀÚ½Ä(child)ÀÏ ¶§, ¿¤·¹¸àÆ® E¿Í ÀÏÄ¡ÇÔ. :first-child °¡»óŬ¶ó½º
E:link
E:visited
E°¡ ¾ÆÁ÷ ¹æ¹® ¾È Çß´ø °÷(:link)ÀÇ ÀÚ¿ø ¸ñÇ¥ ¾ØÄ¿(anchor) ¶Ç´Â
ÀÌ¹Ì ¹æ¹®Çß´ø(:visited) ¿¬°á ÀÚ¿ø ÀÏ ¶§, ¿¤·¹¸àÆ® E¿Í ÀÏÄ¡ÇÔ
¿¬°á(link) °¡»óŬ¶ó½º
E:active
E:hover
E:focus
»ç¿ëÀÚ°¡ »ç¿ë Áß¿¡, E¿Í ÀÏÄ¡ÇÔ ´ÙÀ̳ª¹Í(dynamic) °¡»óŬ¶ó½º
E:lang(c) Àΰ£¾ð¾î c À̸é(¹®¼­¾ð¾î ÁöÁ¤), ¿¤·¹¸àÆ® E ŸÀÔ(type)°ú ÀÏÄ¡ÇÔ :lang() °¡»óŬ¶ó½º
E + F ¿¤·¹¸àÆ® E ¹Ù·Î ¾Õ(adjacent)ÀÇ F ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ ÀÎÁ¢ ¼±ÅÃÀÚ
E[foo] ¾ÖÆ®¸®ºäÆ®(°ª¿¡ °ü°è¾øÀÌ)°¡ "foo"·Î ¼³Á¤µÈ E ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ
E[foo="warning"] "foo" ¾ÖÆ®¸®ºäÆ® °ªÀÌ ²À "warning"°ú °°Àº E ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ
E[foo~="warning"] "foo" ¾ÖÆ®¸®ºäÆ® °ªÀÌ °ø°£À¸·Î ºÐ¸®µÈ °ªµéÀÇ ¸ñ·ÏÀ¸·Î, ±× Áß Çϳª°¡ "warning"°ú ²À °°À» ¶§, E ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ ¾ÖÆ®¸®ºäÆ®(attribute) ¼±ÅÃÀÚ
E[lang|="en"] "lang" ¾ÖÆ®¸®ºäÆ®°¡ ÇÏÀÌÇÂÀ¸·Î ºÐ¸®µÈ °ªµéÀÇ ¸ñ·Ï ÀÏ ¶§, ¿ÞÂÊ¿¡¼­ "en"À¸·Î ½ÃÀÛÇÏ´Â E ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÔ ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ
DIV.warning HTML¿¡¼­ ¸¸. DIV[class~="warning"]°ú °°À½. Ŭ¶ó½º(class) ¼±ÅÃÀÚ
E#myid ID°¡ "myid"¿Í °°Àº ¿¤·¹¸àÆ® E ¿Í ÀÏÄ¡ÇÔ ID ¼±ÅÃÀÚ(selector)

5.2 ¼±ÅÃÀÚ(selector) ¹®¹ý

´Ü¼ø(simple) ¼±ÅÃÀÚ´Â 1) ŸÀÔ(type) ¼±ÅÃÀÚ ¶Ç´Â 2) °øÅë ¼±ÅÃÀÚ¿Í ±× ¹Ù·Î µÚÀÇ ¼ø¼­¿¡ °ü°è¾øÀÌ 0(zero)°³ ȤÀº ±× ÀÌ»óÀÇ ¾ÖÆ®¸®ºäÆ®attribute) ¼±ÅÃÀÚ, ID ¼±ÅÃÀÚµé, ¶Ç´Â °¡»óŬ¶ó½º(pseudo-class)µé·Î ±¸¼ºµÈ °ÍÀÌ´Ù. ¸¸ÀÏ ¸ðµç ÄÞÆ÷³ÙÆ®µéÀÌ ÀÏÄ¡Çϸé, ´Ü¼ø ¼±ÅÃÀÚ´Â ÀÏÄ¡ÇÑ´Ù.

¼±ÅÃÀÚ¶ó ÇÔÀº °áÇÕÀÚ(combinator)¿¡ ÀÇÇÏ¿© ºÐ¸®µÈ ÇϳªÀÌ»óÀÇ ´Ü¼ø ¼±ÅÃÀÚµéÀÇ ¿¬¼Ó(chain)ÀÌ´Ù. °áÇÕÀÚ(combinator)µéÀº °ø¹é, ">"°ú "+" µéÀ̸ç, °ø¹éÀº °áÇÕÀÚ¿Í ±× ¾Õ µÚÀÇ ´Ü¼ø ¼±ÅÃÀÚµé »çÀÌ¿¡ ³ªÅ¸³¯ ¼ö ÀÖ´Ù.

¹®¼­°èÅë(tree)ÀÇ ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÏ´Â ¼±ÅÃÀÚ¸¦ ¼±ÅÃÀÚÀÇ ¸Â´Â Á¦¸ñ(subject)À̶ó ÇÑ´Ù. ÇϳªÀÇ ¼±ÅÃÀÚ´Â ±× ÇÊ¿ä»çÇ×À» ¸¸Á·½ÃÅ°´Â ¾î¶² ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÏ´Â ´ÜÀÏÇÑ ´Ü¼ø ¼±ÅÃÀÚµé·Î ±¸¼ºµÈ´Ù. Ãß°¡Àû ÀÏÄ¡ Á¦ÇÑ(constraint)À» À§ÇØ ´Ü¼ø ¼±ÅÃÀÚ¿Í °áÇÕÀÚ(combinator)ÀÇ ¿¬°áÀ» ±â´Ù¸²À¸·Î¼­, °á°úÀûÀ¸·Î ¼±ÅÃÀÚÀÇ ³»¿ëÀÌ Ç×»ó °¡Àå Àß ¸Â´Â ´Ü¼ø ¼±ÅÃÀÚ¿Í ÀÏÄ¡ÇÏ´Â ¿¤·¹¸àÆ®µéÀÇ ÇϺμ¼Æ®(subset)°¡ µÈ´Ù.

ÇϳªÀÇ °¡»ó ¿¤·¹¸àÆ®(pseudo-element)´Â üÀÎ(chain)ÀÇ ¸¶Áö¸·¿¡ ´Ü¼ø ¼±ÅÃÀÚ¿¡ ÷ºÎ(append)µÉ ¼ö Àִµ¥, ÀÌ °æ¿ì ½ºÅ¸ÀÏ Á¤º¸´Â °¢ ¸Â´Â Á¦¸ñ(subject)ÀÇ ÇϺΠºÎºÐ(subpart)¿¡ Àû¿ëµÈ´Ù.

5.2.1 ±¸·ì Áþ±â(grouping)

¿©·¯ ¼±ÅÃÀÚµéÀÌ °°Àº ¼±¾ð¿¡¼­ »ç¿ëµÉ ¶§, Äĸ¶·Î ºÐ¸®µÈ ¸ñ·ÏÀ¸·Î ±¸·ì Áþ±â¸¦ ÇÑ´Ù.

¿¹Á¦:

ÀÌ ¿¹Á¦¿¡¼­, µ¿ÀÏÇÑ ¼±¾ðµéÀ» ÇÑ ¼¼°³ÀÇ ¸í·ÉµéÀ» Çϳª·Î ¹­¾î º¸ÀÚ.

H1 { font-family: sans-serif }
H2 { font-family: sans-serif }
H3 { font-family: sans-serif }

ÀÌ´Â ¾Æ·¡¿Í °°´Ù:

H1, H2, H3 { font-family: sans-serif }

CSS´Â Á¦ÀÛÀÚ¿¡°Ô, º¹¼ö ¼±¾ð°ú ¾à½Ä¼Ó¼ºÀ» Æ÷ÇÔÇÏ¿©, °£´ÜÈ÷ÇÏ´Â ¾à½Ä("shorthand") ±â´Éµµ Á¦°øÇÑ´Ù.

5.3 °øÅë ¼±ÅÃÀÚ(universal selector)

"*"·Î Ç¥½ÃµÈ °øÅë ¼±ÅÃÀÚ´Â ±× ¿¤·¹¸àÆ®ÀÇ ¾î¶² ŸÀÔ(type)°úµµ ÀÏÄ¡ÇÏ´Â °ÍÀÌ´Ù. ÀÌ´Â ¹®¼­°èÅë(tree) ¾È¿¡¼­ ¾î¶² ÇÑ ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÑ´Ù´Â ¶æÀÌ´Ù.

¸¸ÀÏ ±× °øÅë ¼±ÅÃÀÚ°¡ À¯ÀÏÇÑ ´Ü¼ø ¼±ÅÃÀÚÀÇ ÄÞÆ÷³ÙÆ®(¿ä¼Ò: component)°¡ ¾Æ´Ï¸é, ±× "*" ´Â »ý·«µÉ ¼ö ÀÖ´Ù. ±× ¿¹Á¦´Â:

5.4 ŸÀÔ ¼±ÅÃÀÚ(type selector)

ŸÀÔ ¼±ÅÃÀÚ´Â ¹®¼­¾ð¾î ¿¤·¹¸àÆ® ŸÀÔÀÇ À̸§ÀÌ °°À¸¸é ÀÏÄ¡ÇÑ´Ù. ŸÀÔ ¼±ÅÃÀÚ´Â ¹®¼­°èÅë(tree)¿¡¼­ ±× ¿¤·¹¸àÆ® ŸÀÔÀÇ °¢ ÀνºÅº½º(instance)¿Í ÀÏÄ¡ÇÑ´Ù.

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀ¸·Î ¹®¼­°èÅë¿¡¼­ ¸ðµç H1 ¿¤·¹¸àÆ®µé°ú ÀÏÄ¡ÇÑ´Ù:

H1 { font-family: sans-serif }

5.5 ÇÏÀ§(descendant) ¼±ÅÃÀÚ(selector)

¿©·¯ °æ¿ì, Á¦ÀÛÀÚµéÀº, ¹®¼­°èÅë¿¡¼­ ´Ù¸¥ ¿¤·¹¸àÆ®ÀÇ ÇÏÀ§ ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÏ´Â ¼±ÅÃÀÚ¸¦ ¿øÇÒ ¼ö ÀÖ´Ù(¿¹: H1 ¿¤·¹¸àÆ®¿¡ Æ÷ÇԵǾî ÀÖ´Â EM ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÏ´Â °Íµé). ÇÏÀ§ ¼±ÅÃÀÚ´Â ±¸Á¶¿¡¼­ÀÇ °ü°è¸¦ ³ªÅ¸³½´Ù. ÇÏÀ§ ¼±ÅÃÀÚ´Â °ø¹éÀ¸·Î ºÐ¸®µÈ µÎ°³ÀÌ»óÀÇ ¼±ÅÃÀÚµé·Î ¸¸µé¾îÁø´Ù. ¿¤·¹¸àÆ® B°¡ Á¶»ó(ancestor) ¿¤·¹¸àÆ® AÀÇ ÇÏÀ§ ÀϺΠÀÏ ¶§, "A B" ¾ç½ÄÀÇ ÇÏÀ§ ¼±ÅÃÀÚ¿¡ ÀÏÄ¡ÇÑ´Ù.

¿¹Á¦:

¿¹¸¦ µé¾î, ´ÙÀ½ ¸í·ÉÀ» º¸ÀÚ:

H1 { color: red }
EM { color: red }

ÀÌµé ¸í·ÉÀº ÅؽºÆ®ÀÇ »ö»óÀ» º¯°æ ÇÔÀ¸·Î¼­ °­Á¶ ÇÔÀ» Àǵµ ÇÔ¿¡µµ ºÒ±¸ÇÏ°í, ´ÙÀ½ °æ¿ì¿¡´Â ±× È¿°ú¸¦ »ó½ÇÇÑ´Ù:

<H1>This headline is <EM>very</EM> important</H1>

ÀÌ °æ¿ì, H1 ¾È¿¡¼­ EMÀÌ ³ª¿Ã ¶§´Â û»ö(blue)À¸·Î ÅؽºÆ®¸¦ ¼³Á¤ÇÏ´Â ¸í·ÉÀ¸·Î, ¾ÕÀÇ ¸í·ÉÀ» º¸¿ÏÇÒ ¼ö ÀÖ´Ù:

H1 { color: red }
EM { color: red }
H1 EM { color: blue }

¼¼¹ø° ¸í·ÉÀº ´ÙÀ½ ºÎºÐ¿¡¼­ EMÀÌ ÀÏÄ¡ÇÑ´Ù:

<H1>This <SPAN class="myclass">headline is <EM>very</EM> important</SPAN></H1>

¿¹Á¦:

´ÙÀ½ ¼±ÅÃÀÚ¿¡¼­:

DIV * P

DIV ¿¤·¹¸àÆ®ÀÇ ¼ÕÀÚ(grandchild) ¶Ç´Â ³ªÁß ÇÏÀ§ ÀÎ P ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÑ´Ù. "*"ÀÇ ¾çÂÊ¿¡ °ø¹éÀÌ ÀÖÀ½¿¡ ÁÖÀÇÇ϶ó.

¿¹Á¦:

´ÙÀ½ ¸í·É¿¡¼­ ÇÏÀ§¿Í ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚÀ» °áÇÕÇÑ ¼±ÅÃÀÚ´Â, DIV ¾È¿¡¼­, (1) "href" ¾ÖÆ®¸®ºäÆ®°¡ ¼³Á¤µÈ (2) P ¾È¿¡ ÀÖ´Â ¾î¶² ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÑ´Ù:

DIV P *[href]

5.6 ÀÚ½Ä ¼±ÅÃÀÚ(child selector)

ÀÚ½Ä ¼±ÅÃÀÚ´Â ÇÑ ¿¤·¹¸àÆ®°¡ ÀϺΠ¿¤·¹¸àÆ®ÀÇ ÀÚ½Ä(child)ÀÏ ¶§ ÀÏÄ¡ÇÑ´Ù. ÀÚ½Ä ¼±ÅÃÀÚ´Â ">"·Î ºÐ¸®µÈ µÎ°³ÀÌ»óÀÇ ¼±ÅÃÀÚµé·Î ¸¸µé¾î Áø´Ù.

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀº BODYÀÇ Àڽĵé Áß ¸ðµç P ¿¤·¹¸àÆ®À» ¼³Á¤ÇÏ´Â ½ºÅ¸ÀÏÀÌ´Ù:

BODY > P { line-height: 1.3 }

¿¹Á¦:

´ÙÀ½ ¿¹Á¦´Â ÇÏÀ§ ¼±ÅÃÀÚ¿Í ÀÚ½Ä ¼±ÅÃÀÚ¸¦ °áÇÕÇÑ °ÍÀÌ´Ù:

DIV OL>LI P

ÀÌ´Â OL ¿¤·¹¸àÆ®´Â DIVÀÇ ÇÏÀ§(descendant)À̾î¾ß ÇÏ°í, LI ¿¤·¹¸àÆ®´Â OL ¿¤·¹¸àÆ®ÀÇ ÀÚ½Ä(child)À̾î¾ß Çϸç, P ¿¤·¹¸àÆ®´Â LIÀÇ ÇÏÀ§ ÀÏ ¶§ ÀÏÄ¡ÇÑ´Ù. ">" °áÇÕÀÚ(combinator) ¾Õ, µÚÀÇ ¼±ÅÃÀû °ø¹éÀ» Á¦°ÅÇÏ¿´½¿À» ÁÖ½ÃÇ϶ó.

¿¤·¹¸àÆ®ÀÇ Ã¹¹ø° ÀÚ½ÄÀ» ¼±ÅÃÇÏ´Â Á¤º¸´Â, ¾Æ·¡ :first-child °¡»óŬ¶ó½º(pseudo-class) Ç׸ñÀ» ÂüÁ¶Ç϶ó.

5.7 ÀÎÁ¢(adjacent) ÇüÁ¦(sibling) ¼±ÅÃÀÚ

ÀÎÁ¢ ÇüÁ¦ ¼±ÅÃÀÚ´Â ´ÙÀ½ ¹®¹ýÀ» °®´Â´Ù: E1 + E2, ¿©±â¼­ E2´Â ¼±ÅÃÀÚÀÇ ¸Â´Â Á¦¸ñ(subject)ÀÌ´Ù. ¸¸ÀÏ E1°ú E2°¡ ¹®¼­°èÅë¿¡¼­ °°Àº ¸ðü¸¦ °øÀ¯ÇÏ°í, E1ÀÌ E2ÀÇ ¹Ù·Î ¾Õ¿¡ ÀÖÀ¸¸é ¼±ÅÃÀÚ(selector)´Â ÀÏÄ¡ÇÑ´Ù.

ÀϺΠ¹®¸Æ¿¡¼­, ÀÎÁ¢ ¿¤·¹¸àÆ®´Â Ç¥ÇöÀÌ ÀÚµ¿ÀûÀ¸·Î 󸮵Ǵ ¾ç½ÄÈ­ °³Ã¼(object)¸¦ »ý¼ºÇÑ´Ù(¿¹: ÀÎÁ¢ ¹Ú½ºµé»çÀÌÀÇ ¼öÁ÷ ¸¶ÁøµéÀÇ ÅëÇÕ). "+" ¼±ÅÃÀÚ´Â Á¦ÀÛÀÚ°¡ ÀÎÁ¢ ¿¤·¹¸àÆ®¿¡ Ãß°¡ÀûÀÎ ½ºÅ¸ÀÏ(style)À» ÁöÁ¤ÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù.

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀº MATH ¿¤·¹¸àÆ® ¹Ù·Î µÚ¿¡ ³ª¿À´Â P ¿¤·¹¸àÆ®¸¦ ÁöÁ¤Çϸç, µé¿© ¾²±â°¡ ¾ÈµÈ´Ù:

MATH + P { text-indent: 0 }

´ÙÀ½ ¿¹Á¦·Î H1°ú ±× ¹Ù·Î µÚ¿¡ ³ª¿À´Â H2ÀÇ ¼öÁ÷ °ø°£À» Ãà¼Ò½ÃŲ´Ù:

H1 + H2 { margin-top: -5mm }

¿¹Á¦:

´ÙÀ½ ¸í·Éµµ ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ(attribute selector)°¡ Ãß°¡µÈ °Í ÀÌ¿Ü¿¡´Â À§ÀÇ ¿¹Á¦¿Í ºñ½ÁÇÏ´Ù. ¿©±â¼­, class="opener"¸¦ °®´Â H1ÀÌ ³ª¿Ã ¶§ ¸¸ Ư¼öÇÑ ¾ç½ÄÈ­°¡ µÈ´Ù:

H1.opener + H2 { margin-top: -5mm }

5.8 ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ(attribute selector)

CSS2´Â Á¦ÀÛÀÚµéÀÌ ¿ø¹®(source)¿¡¼­ Á¤ÀÇµÈ ¾ÖÆ®¸®ºäÆ®¿¡ ÀÏÄ¡ÇÏ´Â ¸í·ÉÀ» ÁöÁ¤ÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù.

5.8.1 ÀÏÄ¡(matching)µÈ ¾ÖÆ®¸®ºäÆ®¿Í ¾ÖÆ®¸®ºäÆ® °ª

¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ´Â ³×°¡Áö ¹æ½ÄÀ¸·Î ÀÏÄ¡ÇÒ ¼ö ÀÖ´Ù:

[att]
¿¤·¹¸àÆ®°¡ "att" ¾ÖÆ®¸®ºäÆ®·Î ¼³Á¤µÇ¸é, ±× ¾ÖÆ®¸®ºäÆ® °ª¿¡ °ü°è¾øÀÌ ÀÏÄ¡ÇÑ´Ù.
[att=val]
¿¤·¹¸àÆ®ÀÇ "att" ¾ÖÆ®¸®ºäÆ® °ªÀÌ "val"°ú °°À¸¸é ÀÏÄ¡ÇÑ´Ù.
[att~=val]
¿¤·¹¸àÆ®ÀÇ "att" ¾ÖÆ®¸®ºäÆ® °ªÀÌ °ø¹éÀ¸·Î ºÐ¸®µÈ ´Ü¾îµéÀÇ ¸ñ·ÏÀÌ°í ±× Áß Çϳª°¡ "val"°ú °°À¸¸é ÀÏÄ¡ÇÑ´Ù. ÀÌ ¼±ÅÃÀÚ°¡ »ç¿ëµÇ¸é, ±× °ª ¾ÈÀÇ ´Ü¾î´Â °ø¹éÀ» °¡Áú ¼ö ¾ø´Ù.(±×µéÀÌ °ø¹éÀ¸·Î ºÐ¸®µÇ¾î Àֱ⠶§¹®ÀÌ´Ù).
[att|=val]
¿¤·¹¸àÆ®ÀÇ "att" ¾ÖÆ®¸®ºäÆ® °ªÀÌ ÇÏÀÌÇÂ(-)À¸·Î ºÐ¸®µÈ ´Ü¾îµé("words")ÀÇ ¸ñ·ÏÀÌ°í, ±× ½ÃÀÛÀ» "val"·ÎÇϸé ÀÏÄ¡ÇÑ´Ù. ÀÏÄ¡´Â Ç×»ó ¾ÖÆ®¸®ºäÆ® °ªÀÇ ½ÃÀۺκп¡¼­ »ý±ä´Ù. ÀÌ ÁÖµÈ Àǵµ´Â, RFC 1766¿¡ ¼³¸íµÈ ¹Ù¿Í °°ÀÌ, ¾ð¾î ÇϺÎÄÚµå(subcode ¿¹: HTML¿¡¼­ "lang" ¾ÖÆ®¸®ºäÆ®)¿¡ ÀÏÄ¡ÀÇ Á¡°ËÀ» Çã¿ëÇÏ´Â °ÍÀÌ´Ù.

¾ÖÆ®¸®ºäÆ® °ªÀº ÀνÄÀÚ(identifier) ¶Ç´Â ¹®ÀÚ¿­µé À̾î¾ß ÇÑ´Ù. ¼±ÅÃÀÚ ¾È¿¡¼­ ¾ÖÆ®¸®ºäÆ® À̸§°ú °ªÀÇ ´ë¼Ò¹®ÀÚ ±¸º°¼ºÀº ±× ¹®¼­¾ð¾î¿¡ µû¶ó ´Ù¸£´Ù.

¿¹Á¦:

¿¹¸¦ µé¾î, ´ÙÀ½ ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ´Â, ±× °ª¿¡ °ü°è ¾øÀÌ, ¸ðµç "title" ¾ÖÆ®¸®ºäÆ®°¡ ÁöÁ¤µÈ H1 ¿¤·¹¸àÆ®¿Í ÀÏÄ¡ÇÑ´Ù:

H1[title] { color: blue; }

¿¹Á¦:

´ÙÀ½ ¿¹Á¦¿¡¼­, ¼±ÅÃÀÚ´Â ¸ðµç SPAN ¿¤·¹¸àÆ®ÀÇ "class" ¾ÖÆ®¸®ºäÆ® °ªÀÌ "example"°ú °°À» ¶§ ÀÏÄ¡ÇÑ´Ù:

SPAN[class=example] { color: blue; }

º¹¼ö ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚµéÀº ÇÑ ¿¤·¹¸àÆ®ÀÇ ¿©·¯ ¾ÖÆ®¸®ºäÆ®µé ¶Ç´Â °°Àº ¾ÖÆ®¸®ºäÆ®¿¡¼­ ¿©·¯¹ø ÂüÁ¶Çϱâ À§ÇÏ¿© »ç¿ëµÉ ¼ö ÀÖ´Ù.

¿¹Á¦:

¿¹Á¦¿¡¼­, ¼±ÅÃÀÚ´Â ±× "hello" ¾ÖÆ®¸®ºäÆ®ÀÇ °ªÀÌ "Cleveland"ÀÌ°í "goodbye" ¾ÖÆ®¸®ºäÆ®ÀÇ °ªÀÌ "Columbus" ÀÎ ¸ðµç SPAN ¿¤·¹¸àÆ®¿¡¼­ ÀÏÄ¡ÇÑ´Ù:

SPAN[hello="Cleveland"][goodbye="Columbus"] { color: blue; }

¿¹Á¦:

´ÙÀ½ ¼±ÅÃÀڵ鿡¼­ "="¿Í "~="ÀÇ Â÷ÀÕÁ¡À» ¼³¸íÇÑ´Ù.
ù¹ø° ¼±ÅÃÀÚ´Â, ¿¹¸¦ µé¾î, "rel" ¾ÖÆ®¸®ºäÆ®¿¡¼­ ±× °ªÀÌ "copyright copyleft copyeditor"À̸é 'copyright'À» Æ÷ÇÔÇϹǷΠÀÏÄ¡ÇÑ´Ù.
µÎ¹ø° ¼±ÅÃÀÚ´Â "href" ¾ÖÆ®¸®ºäÆ®ÀÇ °ªÀÌ "http://www.w3.org/" ÀÏ ¶§ ¸¸ ÀÏÄ¡ÇÑ´Ù.

A[rel~="copyright"]
A[href="http://www.w3.org/"]

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀº "lang" ¾ÖÆ®¸®ºäÆ®ÀÇ °ªÀÌ "fr"(ºÒ¾î)ÀÎ ¸ðµç ¿¤·¹¸àÆ®´Â Ç¥½ÃÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù.

*[LANG=fr] { display : none }

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀº "lang" ¾ÖÆ®¸®ºäÆ®°¡ "en", "en-US", "en-cockney"À» Æ÷ÇÔÇÏ¿© "en"À¸·Î ½ÃÀÛÇÏ´Â °ªÀ» °¡Áö¸é ÀÏÄ¡ÇÑ´Ù:

*[LANG|="en"] { color : red }

¿¹Á¦:

°°Àº ¹æ½ÄÀ¸·Î, ´ÙÀ½ ¼Ò¸®(aural) ½ºÅ¸ÀϽ¬Æ® ¸í·É¿¡¼­ °¢ ±â´É¿¡ µû¶ó ´Ù¸¥ ¼Ò¸®¸¦ Å©±â°¡ ´Ù¸£°Ô ÇÒ ¼ö ÀÖ´Ù:

DIALOGUE[character=romeo] { voice-family: "Lawrence Olivier", charles, male }
DIALOGUE[character=juliet] { voice-family: "Vivien Leigh", victoria, female }

5.8.2 DTD¿¡¼­ µðÆúÆ® ¾ÖÆ®¸®ºäÆ® °ª

ÀÏÄ¡(match)´Â ¹®¼­°èÅë ¾È¿¡¼­ ¾ÖÆ®¸®ºäÆ®(attribute) °ª¿¡¼­ ÀÏ¾î ³­´Ù. HTML ÀÌ¿ÜÀÇ ¹®¼­¾ð¾îµé¿¡¼­, µðÆúÆ® ¾ÖÆ®¸®ºäÆ® °ªÀº DTD (HTML 4 DTD ÂüÁ¶)¶Ç´Â ´Ù¸¥ °÷¿¡¼­ Á¤ÀÇµÉ ¼ö ÀÖ´Ù. ½ºÅ¸ÀϽ¬Æ®µéÀº, ¹®¼­°èÅë(tree) ¾È¿¡ µðÆúÆ®(default) °ªµéÀÌ Æ÷ÇԵǾî ÀÖÁö ¾Ê´õ¶óµµ, ±×µéÀÌ ÀÛ¿ëÇϵµ·Ï ÁöÁ¤µÇ¾î¾ß ÇÑ´Ù.

¿¹Á¦:

¿¤·¹¸àÆ® EXAMPLE¿¡¼­ µðÆúÆ® °ª "decimal"À» °®´Â ¾ÖÆ®¸®ºäÆ® "notation"¸¦ °¡Á¤ÇØ º¸ÀÚ. DTD ºÎºÐÀº ¾Æ·¡°ú °°À» ¼ö ÀÖ´Ù.

 <!ATTLIST EXAMPLE notation (decimal,octal) "decimal">

½ºÅ¸ÀϽ¬Æ®¿¡ ¸í·ÉÀÌ Æ÷ÇԵǸé

EXAMPLE[notation=decimal] { /*... µðÆúÆ®(default) ¼Ó¼º ¼³Á¤ ...*/ }
EXAMPLE[notation=octal] { /*... ±âŸ ¼³Á¤ ...*/ }

±×¸®°í, ¸í½ÃÀûÀº ¾Æ´ÏÁö ¸¸, ÀÌ ¾ÖÆ®¸®ºäÆ®°¡ µðÆúÆ®·Î ¼³Á¤µÇ´Â °÷À» ¾Ë±â À§ÇØ, ´ÙÀ½ ¸í·ÉÀÌ Ãß°¡µÉ ¼ö ÀÖ´Ù:

EXAMPLE { /*... µðÆúÆ®(default) ¼Ó¼º ¼³Á¤ ...*/ }

ÀÌ ¼±ÅÃÀÚ(selector)°¡ ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚº¸´Ù ƯÁ¤¼º(specificity)ÀÌ ÀûÀ¸¹Ç·Î, µðÆúÆ®ÀÇ °æ¿ì¿¡ ¸¸ »ç¿ëÇÑ´Ù. µðÆúÆ®(default)¿Í °°Àº ½ºÅ¸ÀÏ(style)À» »ç¿ëÇÏÁö ¾Ê´Â ¸ðµç ´Ù¸¥ ¾ÖÆ®¸®ºäÆ® °ªµéÀº ¸í½ÃÀûÀ¸·Î µÇ¾î¾ß ÇÔ¿¡ ÁÖÀÇÇÏ¿©¾ß ÇÑ´Ù.

5.8.3 Ŭ¶ó½º ¼±ÅÃÀÚ(class selector)

HTML°ú °°ÀÌ »ç¿ëµÇ´Â ½ºÅ¸ÀϽ¬Æ®¿¡¼­, Á¦ÀÛÀÚ´Â, "class" ¾ÖÆ®¸®ºäÆ®¿¡ ÀÏÄ¡ÇÒ ¶§, "~=" Ç¥±â¸¦ ´ëüÇÏ¿©, Á¡(.) Ç¥±â¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. µû¶ó¼­, HTML¿¡¼­ "DIV.value"¿Í "DIV[class~=value]"´Â °°Àº Àǹ̸¦ °®´Â´Ù. ±× ¾ÖÆ®¸®ºäÆ® °ª ¹Ù·Î µÚ¿¡´Â "."ÀÌ µû¶ó¿Í¾ß ÇÑ´Ù.

¿¹Á¦:

¿¹¸¦ µé¾î, class~="pastoral"¸¦ °®´Â ¸ðµç ¿¤·¹¸àÆ®¿¡ ´ÙÀ½°ú °°Àº ½ºÅ¸ÀÏ Á¤º¸¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù:

*.pastoral { color: green } /* class~=pastoral ÀÎ ¸ðµç ¿¤·¹¸àÆ® */
¶Ç´Â ´Ü¼øÈ÷
.pastoral { color: green } /* class~=pastoral ÀÎ ¸ðµç ¿¤·¹¸àÆ® */

´ÙÀ½Àº class~="pastoral"ÀÎ H1 ¿¤·¹¸àÆ®µé ¸¸À» ÁöÁ¤ÇÑ °ÍÀÌ´Ù:

H1.pastoral { color: green } /* class~=pastoral ÀÎ H1 ¿¤·¹¸àÆ® */

¾Æ·¡¿¡¼­, ù¹ø° H1´Â ³ì»ö(green) ÅؽºÆ®·Î Ç¥ÇöµÇ´Ï ¾Ê°í, µÎ¹ø°´Â ³ì»öÀ¸·Î Ç¥ÇöµÈ´Ù:

<H1>Not green</H1>
<H1 class="pastoral">Very green</H1>

ÇϺΠ¼¼Æ®(subset) ÀÎ "class" °ª¿¡ ÀÏÄ¡Çϱâ À§Çؼ­´Â, ¼ø¼­´Â °ü°è ¾øÁö ¸¸, °¢ °ª ¸Ç ¾Õ¿¡ "."ÀÌ ³ª¿Í¾ß ÇÑ´Ù.

¿¹Á¦:

¿¹¸¦ µé¾î, ´ÙÀ½ ¸í·ÉÀº "class" ¾ÖÆ®¸®ºäÆ®°¡ °ø¹éÀ¸·Î ºÐ¸®µÈ °ªµéÀÇ ¸ñ·ÏÀ¸·Î "pastoral"°ú "marine"À» Æ÷ÇÔ°¡°í ÀÖ´Â P ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÑ´Ù:

P.pastoral.marine { color: green }

ÀÌ ¸í·ÉÀº class="pastoral blue aqua marine"ÀÇ °æ¿ì ÀÏÄ¡Çϳª, class="pastoral blue"¿¡¼­´Â ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù.

ÁÖ¼®. CSS´Â "class" ¾ÖÆ®¸®ºäÆ®¿¡ °­·ÂÇÑ ´É·ÂÀ» Á¦°øÇÏ¿©, Á¦ÀÛÀÚµéÀÌ, °ÅÀÇ ¿¬°üÀÌ ¾ø´Â Ç¥Çö(HTMLÀÇ DIV, SPAN°ú °°Àº) ¿¤·¹¸àÆ®¿¡ ±âÃÊÇÏ¿©, ±×µé ÀÚ½ÅÀÇ "¹®¼­¾ð¾î"¸¦ µðÀÚÀÎÇÒ ¼ö ÀÖ°Ô ÇÏ°í, "class" ¾ÖÆ®¸®ºäÆ®¸¦ ÅëÇÏ¿© ½ºÅ¸ÀÏ Á¤º¸¸¦ ÁöÁ¤ÇÏ°Ô ÇÏ¿© ÁØ´Ù. ¹®¼­¾ð¾îÀÇ ±¸Á¶Àû(structural) ¿¤·¹¸àÆ®°¡ ¸¹Àº °æ¿ì ÀÎ½ÄµÇ°í ¼ö¿ëµÇ´Â Àǹ̸¦ °®Áö ¸¸, Á¦ÀÛÀÚ-Á¤ÀÇ Å¬¶ó½º¿¡´Â ±×·¸Áö ¸øÇϹǷÎ, Á¦ÀÛÀÚ´Â ÀÌ¿Í °°Àº »ç¿ëÀ» ÇÇÇØ¾ß ÇÑ´Ù.

5.9 ID ¼±ÅÃÀÚ(selector)

¹®¼­¾ð¾î´Â ID ŸÀÔ(type)À¸·Î ¼±¾ðµÈ ¾ÖÆ®¸®ºäÆ®¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù. ID ŸÀÔ ¾ÖÆ®¸®ºäÆ®ÀÇ ¼Ó¼ºÀº °°Àº °ªÀ» °®´Â ´Ù¸¥ ¾ÖÆ®¸®ºäÆ®°¡ ¾ø´Ù´Â °ÍÀÌ´Ù; ¾î¶² ¹®¼­¾ð¾îµç ÇϳªÀÇ ID ¾ÖÆ®¸®ºäÆ®´Â ±×ÀÇ ¿¤·¹¸àÆ®¸¦ À¯ÀÏÇÏ°Ô Áö¸íÇϴµ¥ »ç¿ëµÉ ¼ö ÀÖ´Ù. HTML¿¡¼­ ¸ðµç ID ¾ÖÆ®¸®ºäÆ®´Â "id" À̸§À» °®´Â´Ù; XML¿¡¼­´Â ID ¾ÖÆ®¸®ºäÆ®ÀÇ À̸§À» ´Ù¸£°Ô ÁÙ ¼ö ÀÖÀ¸³ª, °°Àº Á¦ÇÑÀÌ Àû¿ëµÈ´Ù.

¹®¼­¾ð¾îÀÇ ID ¾ÖÆ®¸®ºäÆ®´Â Á¦ÀÛÀÚ¿¡°Ô ¹®¼­°èÅë¿¡¼­ ÇÑ ¿¤·¹¸àÆ® ÀνºÅº½º(instance)À» ÀνÄÀÚ(identifier)·Î ¼³Á¤ÇÒ ¼ö ÀÖ°Ô ÇÑ´Ù. CSSÀÇ ID ¼±ÅÃÀÚ´Â ±× ÀνÄÀÚ(identifier)¸¦ ±âÁØÇÏ¿© ¿¤·¹¸àÆ® ÀνºÅº½ºÀÇ ÀÏÄ¡¸¦ Á¡°ËÇÑ´Ù. CSSÀÇ ID ¼±ÅÃÀÚ´Â ±× ID °ª ¹Ù·Î ¾Õ¿¡ "#"¸¦ Æ÷ÇÔÇÑ´Ù.

¿¹Á¦:

´ÙÀ½ ID ¼±ÅÃÀÚ´Â ID ¾ÖÆ®¸®ºäÆ® °ªÀÌ "chapter1" ÀÎ H1 ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÑ´Ù:

H1#chapter1 { text-align: center }

´ÙÀ½ ¿¹Á¦¿¡¼­, ÀÌ ½ºÅ¸ÀÏ ¸í·ÉÀº ID °ªÀÌ "z98y" ÀÎ ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÑ´Ù. µû¶ó¼­ ÀÌ´Â P ¿¤·¹¸àÆ®¿¡¼­ ÀÏÄ¡°¡ µÈ´Ù:

<HEAD>
  <TITLE>P¿¡¼­ ÀÏÄ¡</TITLE>
  <STYLE type="text/css">
    *#z98y { letter-spacing: 0.3em }
  </STYLE>
</HEAD>
<BODY>
  <P id=z98y>Wide text</P>
</BODY>

±×·¯³ª, ´ÙÀ½ ¿¹Á¦¿¡¼­, ½ºÅ¸ÀÏ ¸í·ÉÀº ID °ªÀÌ "z98y" ÀÎ H1 ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÑ´Ù. ¿©±â¼­´Â ÀÌ ¸í·ÉÀº P ¿¤·¹¸àÆ®¿¡¼­ ÀÏÄ¡ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù:

<HEAD>
  <TITLE>H1¿¡¼­ ¸¸ ÀÏÄ¡</TITLE>
  <STYLE type="text/css">
    H1#z98y { letter-spacing: 0.5em }
  </STYLE>
</HEAD>
<BODY>
  <P id=z98y>Wide text</P>
</BODY>

ID ¼±ÅÃÀÚ(selector)´Â ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚº¸´Ù ¿ì¼±¼øÀ§°¡ ³ô´Ù. ¿¹¸¦ µé¾î, HTMLÀÇ Ä«½ºÄÉÀ̵å(cascade)¿¡¼­ [ID=p123]º¸´Ù ¼±ÅÃÀÚ #p123°¡ ¿ì¼± Àû¿ëµÈ´Ù.

ÁÖ¼®. XML 1.0¿¡¼­ ¾î¶² ¾ÖÆ®¸®ºäÆ®¿¡ ¿¤·¹¸àÆ®ÀÇ IDµéÀÌ Æ÷ÇԵǴ°¡¿¡ ´ëÇÑ Á¤º¸°¡ DTD¿¡ Æ÷ÇԵǾî ÀÖ´Ù XMLÀ» Çؼ®(parsing)ÇÒ ¶§, »ç¿ëµµ±¸´Â DTD¸¦ Ç×»ó ÀÐÁö ¾ÊÀ¸¹Ç·Î, ¿¤·¹¸àÆ® ID¸¦ ¸ð¸¦ ¼ö ÀÖ´Ù. ¸¸ÀÏ ½ºÅ¸ÀϽ¬Æ® ¼³°èÀÚ°¡ ÀÌ¿Í °°Àº »óȲÀ» ¾Ë°í Àְųª Àǽɽº·¯¿ì¸é, ÀÏ¹Ý ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚ¸¦ ´ë½Å »ç¿ëÇÏ¿©¾ß ÇÑ´Ù: [name=p371] ´ë½Å #p371. ±×·¯³ª, ÀÏ¹Ý ¾ÖÆ®¸®ºäÆ® ¼±ÅÃÀÚÀÇ Ä«½ºÄÉÀ̵ù ¼ø¼­´Â ID ¼±ÅÃÀÚ¿¡¼­¿Í ´Ù¸£´Ù. ¼±¾ðÀÇ ¿ì¼±¼øÀ§¸¦ ³ôÀ̱â À§ÇÏ¿© "!important"¸¦ Ãß°¡ÇÒ ÇÊ¿ä°¡ ÀÖÀ» ¼ö ÀÖ´Ù:
[name=p371] {color: red !important}
¹°·Ð, XML 1.0 ¹®¼­¿¡¼­ DTD ¾øÀÌ´Â ¿¤·¹¸àÆ®°¡ ID¸¦ ÀüÇô °¡Áú ¼ö ¾ø´Ù.

5.10 °¡»ó ¿¤·¹¸àÆ®(pseudo-element)¿Í °¡»óŬ¶ó½º(pseudo-class)

CSS2¿¡¼­ ½ºÅ¸ÀÏÀº ÀϹÝÀûÀ¸·Î ¹®¼­°èÅë(tree)¿¡¼­ÀÇ À§Ä¡¿¡ ±âÃÊÇÏ¿© ¿¤·¹¸àÆ®¿¡ ÷ºÎ(attach)µÈ´Ù. ÀÌ ´Ü¼øÇÑ ¸ðµ¨(model)Àº ¸¹Àº °æ¿ì¿¡ ÃæºÐÇϳª, ÀϺΠÀÏ¹Ý ¹ßÇà(publish) ½Ã³ª¸®¿À(scenario)Àº, ¹®¼­°èÅëÀÇ ±¸Á¶ ¶§¹®¿¡, ºÒ°¡´É ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, HTML 4¿¡¼­, ¹®´ÜÀÇ Ã¹¹ø° ¿¤·¹¸àÆ®´Â ¾Æ¹«°Íµµ ÂüÁ¶µÇÁö ¾ÊÀ¸¸ç, µû¶ó¼­ °£´ÜÇÑ CSS ¼±ÅÃÀÚµµ ÂüÁ¶µÉ ¼ö ¾ø´Ù.

CSS´Â, ¹®¼­°èÅë ¹Û¿¡ ÀÖ´Â Á¤º¸¿¡ ±âÃÊÇÏ¿© ¾ç½ÄÈ­¸¦ Çã¿ëÇϱâ À§ÇÏ¿©, °¡»ó ¿¤·¹¸àÆ®¿Í °¡»óŬ¶ó½ºÀÇ °³³äÀ» ¼Ò°³ÇÏ¿´´Ù.

°¡»ó ¿¤·¹¸àÆ®À̳ª °¡»óŬ¶ó½º µÑ ´Ù ¿øº» ¹®¼­ ¶Ç´Â ¹®¼­°èÅë ¾È¿¡´Â ³ªÅ¸³ªÁö ¾Ê´Â´Ù.

°¡»óŬ¶ó½º´Â ¼±ÅÃÀÚ ¾È¿¡¼­ ¾îµð¿¡³ª Çã¿ëµÇÁö ¸¸, °¡»ó ¿¤·¹¸àÆ®´Â ¼±ÅÃÀÚÀÇ ¸Â´Â Á¦¸ñ(subject) ´ÙÀ½¿¡ ¸¸ ³ªÅ¸³¯ ¼ö ÀÖ´Ù.

°¡»ó ¿¤·¹¸àÆ®¿Í °¡»óŬ¶ó½º À̸§Àº ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê´Â´Ù.

ÀϺΠ°¡»óŬ¶ó½º´Â »óÈ£ ¹èŸÀûÀÎ ¹Ý¸é, ´Ù¸¥ °ÍÀº °°Àº ¿¤·¹¸àÆ®¿¡ µ¿½Ã¿¡ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¸í·ÉÀÌ »óÈ£ Ãæµ¹(conflict)Çϸé, ÀÏ¹Ý Ä«½ºÄÉÀ̵ù ¼ø¼­·Î ó¸®ÇÑ´Ù.

±Ô°Ý¿¡ ºÎÇÕÇÏ´Â HTML »ç¿ëµµ±¸´Â, ¼±ÅÃÀÚ ¾ÈÀÇ :first-line ¶Ç´Â :first-letter ·Î µÈ ¸ðµç ¸í·ÉÀ», ¹«½ÃÇϰųª, ÀÌµé °¡»ó ¿¤·¹¸àÆ®¿¡¼­ ±× ¼Ó¼ºµéÀÇ ÇϺΠ¼¼Æ®(subset) ¸¸À» Áö¿øÇÒ ¼ö ÀÖ´Ù.

5.11 °¡»óŬ¶ó½º(pseudo-class)

5.11.1 :first-child °¡»óŬ¶ó½º

:first-child °¡»óŬ¶ó½º´Â ¾î¶² ´Ù¸¥ ¿¤·¹¸àÆ®ÀÇ Ã¹¹ø° ÀÚ½Ä(child) ÀÎ ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÑ´Ù.

¿¹Á¦:

´ÙÀ½ ¿¹Á¦¿¡¼­, ¼±ÅÃÀÚ´Â DIV ¿¤·¹¸àÆ® ù¹ø° ÀÚ½ÄÀÎ ¾î¶² P ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÑ´Ù. ÀÌ ¸í·ÉÀº DIVÀÇ Ã¹¹ø° ¹®´Ü µé¿©¾²±â¸¦ ¾ïÁ¦ÇÑ´Ù:

DIV > P:first-child { text-indent: 0 }
´ÙÀ½¿¡¼­ ÀÌ ¼±ÅÃÀÚ´Â DIV ¾ÈÀÇ P¿¡ ÀÏÄ¡ÇÑ´Ù:
<P>note ÀÌÀüÀÇ ¸¶Áö¸· P.
<DIV class="note">
  <P>note ¾ÈÀÇ Ã¹¹ø° P.
</DIV>
±×·¯³ª, ´ÙÀ½¿¡¼­ µÎ¹ø° P¿¡´Â ÀÏÄ¡ÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù:
<P>note ÀÌÀüÀÇ ¸¶Áö¸· P.
<DIV class="note">
  <H2>Note</H2>
  <P>note ¾ÈÀÇ Ã¹¹ø° P.
</DIV>

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀº óÀ½ ÀÚ½ÄÀÎ P ¿¤·¹¸àÆ®ÀÇ ÇÏÀ§(descendant)ÀÇ ÀϺÎÀÎ ¾î¶² EM ¿¤·¹¸àÆ®ÀÇ ±Û²Ã ±½±â¸¦ 'bold'·Î ¼³Á¤ÇÑ´Ù:

P:first-child EM { font-weight : bold }

°¡¸í(anonymous) ¹Ú½ºµéÀº ¹®¼­°èÅëÀÇ ºÎºÐÀÌ ¾Æ´Ï¹Ç·Î, ù¹ø° ÀÚ½ÄÀ» °è»êÇÒ ¶§ Ä«¿îÆ®µÇÁö ¾Ê´Â´Ù Á¡À» ÁÖ½ÃÇ϶ó.

¿¹Á¦¿¡¼­:

<P>abc <EM>µðÆúÆ®(default)</EM>
EMÀº PÀÇ Ã¹¹ø° ÀÚ½Ä(child)ÀÌ´Ù.

´ÙÀ½ µÎ ¼±ÅÃÀڵ鵵 µ¿ÀÏÇÏ´Ù:

* > A:first-child /* A´Â ¾î¶² ¿¤·¹¸àÆ®ÀÇ Ã³À½ ÀÚ½Ä */
A:first-child /* °°´Ù */

5.11.2 ¿¬°á °¡»ó(pseudo-link)Ŭ¶ó½º: :link, :visited

»ç¿ëµµ±¸´Â ÀϹÝÀûÀ¸·Î ÀÌÀü¿¡ ¹æ¹® Çß´ø ¿¬°á(link)°ú ¹æ¹®ÇÑ ÀûÀÌ ¾ø´Â ¿¬°áµéÀ» ´Ù¸£°Ô µð½ºÇ÷¹ÀÌÇÑ´Ù. CSS´Â À̵éÀ» ±¸º°Çϱâ À§ÇÏ¿© °¡»óŬ¶ó½º ':link' ¿Í ':visited'¸¦ Á¦°øÇÑ´Ù:

ÁÖ¼®. ¾î¶² ÀÏÁ¤ÇÑ ½Ã°£ ÈÄ, »ç¿ëµµ±¸µéÀº ¹æ¹® Çß´ø(':visited') ¿¬°áÀº ¹æ¹®ÇÏÁö ¾Ê¾Ò´ø ¿¬°á(':link')·Î µÇµ¹¸± ¼ö ÀÖ´Ù.

ÀÌ µÎ »óŵéÀº »óÈ£ ¹èŸÀûÀÌ´Ù.

¹®¼­¾ð¾î´Â ¾î¶² ¿¤·¹¸àÆ®µéÀÌ ÇÏÀÌÆÛ(hyperlink) ¸µÅ© ¾ØÄ¿(anchor) ÀÚ¿øÀΰ¡¸¦ ÆÇÁ¤ÇÑ´Ù. ¿¹¸¦ µé¾î, HTML¿¡¼­ 4¿¡¼­, ¿¬°á °¡»óŬ¶ó½º´Â "href" ¾ÖÆ®¸®ºäÆ®¸¦ °®´Â A ¿¤·¹¸àÆ®¿¡ Àû¿ëµÈ´Ù. µû¶ó¼­, ´ÙÀ½ µÎ CSS2 ¼±¾ðµéÀº ºñ½ÁÇÑ È¿°ú¸¦ °®´Â´Ù:

A:link { color: red }
:link { color: red }

¿¹Á¦:

´ÙÀ½ ¿¬°á(link)¿¡¼­:

<A class="external" href="http://out.side/">external link</A>
¹æ¹® Çß´ø ¿¬°áÀ̸é:
A.external:visited { color: blue }
ÀÌ ¸í·ÉÀ¸·Î À̴ û»öÀ¸·Î µÈ´Ù.

5.11.3 ´ÙÀ̳ª¹Í(dynamic) °¡»óŬ¶ó½º :hover, :active, :focus

ÀÎÅ;×Ƽºê(interactive: Á¤º¸±³È¯) »ç¿ëµµ±¸µéÀº ¶§·Î´Â »ç¿ëÀÚ È°µ¿¿¡ ¹ÝÀÀÇÏ¿© Ç¥ÇöÀ» º¯È­½ÃÄÑ ÁØ´Ù. CSS´Â ÀϹÝÀûÀÎ °æ¿ì¸¦ À§ÇÏ¿© ¼¼°¡Áö °¡»ó(pseudo-class)Ŭ¶ó½ºµéÀ» Á¦°øÇÑ´Ù:

ÀÌµé °¡»óŬ¶ó½ºµéÀº »óÈ£ ¹èŸÀûÀÌ ¾Æ´Ï´Ù. ÇÑ ¿¤·¹¸àÆ®´Â µ¿½Ã¿¡ ¿©·¯°¡Áö¿¡ ÀÏÄ¡ÇÒ ¼ö ÀÖ´Ù.

CSS´Â À§ÀÇ »óÅ¿¡¼­ ¾î´À ¿¤·¹¸àÆ®°¡ Àû¿ëµÇ°Å³ª, ÀÛ¿ëÇÏÁö ¾Ê´Â°¡¸¦ Á¤ÀÇÇÏÁö ¾Ê°íÀÖ´Ù. ½ºÅ©¸³Æ®´Â, ¿¤·¹¸àÆ®°¡ »ç¿ëÀÚ À̺¥Æ®¿¡ ÀÛ¿ëÇÒ °ÍÀΰ¡ ¾Æ´Ñ°¡, ´Ù¸¥ ÀåÄ¡¿Í »ç¿ëµµ±¸µéÀÌ ´Ù¸¥ ¹æ¹ýÀÇ Áö½Ã ¶Ç´Â ¿¤·¹¸àÆ®ÀÇ È°¼ºÈ­ ¹æ¹ý µîÀ» ¹Ù²Ü ¼ö ÀÖ´Ù.

»ç¿ëµµ±¸µéÀº ÇöÀçÀÇ µð½ºÇ÷¹ÀÌµÈ ¹®¼­¸¦, °¡»óŬ¶ó½º ¼Û½Å ¶§¹®¿¡, ´Ù½Ã Ç¥½Ã(reflow)ÇÒ ÇÊ¿ä´Â ¾ø´Ù. ¿¹¸¦ µé¾î, ½ºÅ¸ÀϽ¬Æ®´Â, :active ¿¬°áÀÇ 'font-size'¸¦ È°¼ºÈ­ ¾ÈµÈ ¿¬°áº¸´Ù Å« ±ÛÀÚ·Î ÇÒ °ÍÀΰ¡¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ±×·¯³ª, ÀÌ´Â ¹®¼­¸¦ Àд »ç¶÷ÀÌ ¿¬°áÀ» ¼±ÅÃÇÏ¿´À» ¶§, ±ÛÀÚµéÀÇ À§Ä¡ º¯°æÀ» À¯¹ß½Ãų ¼ö ÀÖÀ¸¹Ç·Î »ç¿ëµµ±¸´Â ÇØ´ç ½ºÅ¸ÀÏ ¸í·ÉÀ» ¹«½ÃÇÒ ¼öµµ ÀÖ´Ù.

¿¹Á¦:

A:link { color: red }  /* ¹æ¹®ÇÏÁö ¾Ê¾Ò´ø ¿¬°á */
A:visited { color: blue } /* ¹æ¹®Çß´ø ¿¬°á */
A:hover { color: yellow } /* »ç¿ëÀÚ°¡ ¸¶¿ì½º¸¦ ¿¬°á¿¡ ¿Ã·Á ³õ¾ÒÀ» ¶§(hover) */
A:active { color: lime } /* È°¼º ¿¬°á */

A:hover´Â A:link¿Í A:visited ¸í·É ´ÙÀ½¿¡ À§Ä¡½ÃÄѾßÇÑ´Ù Á¡¿¡ À¯ÀÇÇ϶ó. ±×·¸Áö ¾ÊÀ¸¸é Ä«½ºÄÉÀ̵ù(cascading) ¸í·ÉµéÀÌ A:hoverÀÇ 'color' ¼Ó¼ºÀ» °¨Ã߱⠶§¹®ÀÌ´Ù. À¯»çÇÏ°Ô, A:active°¡ A:hover ´ÙÀ½¿¡ À§Ä¡Çϱ⠶§¹®¿¡, »ç¿ëÀÚ°¡ A ¿¤·¹¸àÆ®¸¦ È°¼ºÈ­ÇÏ°í ±× À§¸¦ Áö½Ã(hover)ÇÒ ¶§, È°¼º(active) »ö»ó(lime)ÀÌ Àû¿ëµÈ´Ù.

¿¹Á¦:

´ÙÀÌ´Ï¹Í °¡»óŬ¶ó½º(dynamic pseudo-class)µéÀÇ °áÇÕ ¿¹Á¦:

A:focus { background: yellow }
A:focus:hover { background: white }

¸¶Áö¸· ¼±ÅÃÀÚ(selector)´Â A ¿¤·¹¸àÆ®µé ¾È¿¡ ÀÖ´Â °¡»óŬ¶ó½º :focus¿Í °¡»óŬ¶ó½º :hover¿¡¼­ ÀÏÄ¡ÇÑ´Ù.

ÃÊÁ¡ °³¿äÀÇ Ç¥Çö¿¡ ´ëÇÑ Á¤º¸´Â ´ÙÀ̳ª¹Í ÃÊÁ¡(dynamic focus) °³¿ä Ç׸ñÀ» ÂüÁ¶Ç϶ó.

ÁÖ¼®. CSS1¿¡¼­, ':active' °¡»óŬ¶ó½º´Â ':link', ':visited'¿Í »óÈ£ ¹èŸÀûÀ̾ú´Ù. ±×·¯³ª Áö±ÝÀº ±×·¸Áö ¾Ê´Ù. ¿¤·¹¸àÆ®´Â ':visited' ¿Í ':active' (¶Ç´Â ':link' ¿Í ':active')°¡ µÉ ¼ö ÀÖÀ¸¸ç, ÀÏ¹Ý Ä«½ºÄÉÀ̵ù ¸í·ÉÀÌ ¾î¶² ¼Ó¼ºÀ» Àû¿ëÇÒ °ÍÀΰ¡¸¦ °áÁ¤ÇÑ´Ù.

5.11.4 ¾ð¾î °¡»óŬ¶ó½º(lang pseudo-class): :lang

¸¸ÀÏ ¹®¼­¾ð¾î°¡ ¿¤·¹¸àÆ®ÀÇ Àΰ£¾ð¾î¸¦ ¾î¶»°Ô °áÁ¤Çϴ°¡ ÁöÁ¤µÇ¾ú´Ù¸é, CSS¿¡¼­ ¼±ÅÃÀÚ¿¡ ¸Â´Â ¿¤·¹¸àÆ®ÀÇ ¾ð¾î¸¦ ±âÃÊ·Î ¾²´Â °ÍÀÌ °¡´É ÇÏ´Ù. ¿¹¸¦ µé¾î, HTML 4¿¡¼­, "lang" ¾ÖÆ®¸®ºäÆ®, META ¿¤·¹¸àÆ®, Á¤º¸ HTTP Çì´õ(header) µî°ú °°Àº ÇÁ·ÎÅäÄÝ(protocol)·Î ºÎÅÍÀÇ Á¤º¸ Á¶ÇÕ¿¡ ÀÇÇÏ¿© ¾ð¾î°¡ °áÁ¤µÈ´Ù. XMLÀº XML:LANGÀ¸·Î ºÒ¸®¿ì´Â ¾ÖÆ®¸®ºäÆ®¸¦ »ç¿ëÇϸç, ¾ð¾î °áÁ¤À» À§ÇÏ¿© ƯÁ¤ ¾ð¾î¿¡ µû¸¥ ´Ù¸¥ ¹æ½ÄµéÀÌ ÀÖÀ» ¼ö ÀÖ´Ù.

':lang(C)' °¡»óŬ¶ó½º´Â, ¸¸ÀÏ ±× ¿¤·¹¸àÆ®°¡ ¾ð¾î C ¼Ó¿¡ ÀÖÀ¸¸é, ÀÏÄ¡ÇÑ´Ù. ¿©±â¼­ C´Â, HTML 4°ú RFC 1766¿¡ ±â¼úµÈ, ¾ð¾î ÄÚµå(code)¸¦ ¸»ÇÑ´Ù. ÀÌ´Â '|=' operator¿Í °°Àº ¹æ½ÄÀ¸·Î ÀÏÄ¡Çϴ°¡°¡ Á¡°ËµÈ´Ù.

¿¹Á¦:

´ÙÀ½ ¸í·ÉÀº HTML ¹®¼­¿¡¼­ µû¿ÈÇ¥µé·Î ºÒ¾î(French) ¶Ç´Â µ¶ÀϾî(German)·Î ¼³Á¤ÇÑ´Ù:

HTML:lang(fr) { quotes: '¡ì ' ' ¡í' }
HTML:lang(de) { quotes: '¡í' '¡ì' '\2039' '\203A' }
:lang(fr) > Q { quotes: '¡ì ' ' ¡í' }
:lang(de) > Q { quotes: '¡í' '¡ì' '\2039' '\203A' }

µÎ¹ø° ¸í·ÉÀÇ Â¦Àº Q ¿¤·¹¸àÆ®ÀÇ 'quotes'ÀÇ ¼Ó¼ºÀº ±× ¸ðü ¾ð¾î¿¡ µû¶ó ¼³Á¤ÇÑ´Ù. µû¿ÈÇ¥ÀÇ ¼±ÅÃÀÌ, µû¿ÈÇ¥ ÀÚü°¡ ¾Æ´Ï¶ó, µû¿ÈÇ¥ ¾Õ µÚ ¿¤·¹¸àÆ®ÀÇ ¾ð¾î¿¡ ±âÃÊÇϹǷÎ, ÀÌ¿¡ ¸Â°Ô¼öÇàµÈ´Ù; ¿µ¾î¸¦ »ç¿ëÇÏ´Â ¿µ¾î ÅؽºÆ® ÇÑ °¡¿îµ¥ ºÒ¾î(French) ºÎºÐÀº “à l'improviste” 󷳵ȴÙ.

5.12 °¡»ó ¿¤·¹¸àÆ®(pseudo-element)

5.12.1 :first-line °¡»ó ¿¤·¹¸àÆ®

:first-line °¡»ó ¿¤·¹¸àÆ®´Â ¹®´Ü¿¡¼­ ù¹ø° ¾ç½ÄÈ­µÈ ÁÙ¿¡ Ư¼ö ½ºÅ¸ÀÏÀ» Àû¿ëÇÑ´Ù. ¿¹¸¦ µé¾î:

P:first-line { text-transform: uppercase }

À§ÀÇ ¸í·ÉÀº '°¢ ¹®´ÜÀÇ Ã¹¹ø° ÁÙÀÇ ±ÛÀÚ¸¦ ´ë¹®ÀÚ·Î ¹Ù²Ù¾î¶ó'´Â °ÍÀ» ÀǹÌÇÑ´Ù, ±×·¯³ª, ÀÌ ¼±ÅÃÀÚ(selector) "P:first-line"´Â ½ÇÁ¦ HTMLÀÇ ¾î¶² ¿¤·¹¸àÆ®¿¡¼­µµ ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù. ±Ô°Ý¿¡ ºÎÇÕÇÏ´Â »ç¿ëµµ±¸´Â °¢ ¹®´ÜÀÇ °¡»ó ¿¤·¹¸àÆ®¿¡ ÀÏÄ¡ÇÏ´Â ½ÃÀÛ ÁÙÀ» »ðÀÔÇÑ´Ù.

ù¹ø° ÁÙÀÇ ±æÀÌ´Â ÆäÀÌÁöÀÇ ³Êºñ, ±Û²Ã Å©±â, µî ¿©·¯ ¿äÀε鿡 µû¶ó ´Ù¸£´Ù´Â Á¡¿¡ À¯ÀÇÇ϶ó. µû¶ó¼­, ÀϹÝÀûÀÎ ¹®´ÜÀº ¾Æ·¡¿Í °°ÀÌ µÈ´Ù:

<P>This is a somewhat long HTML
paragraph that will be broken into several
lines. The first line will be identified
by a fictional tag sequence. The other lines
will be treated as ordinary lines in the
paragraph.</P>

±× ¶æÀº

ÀÌ´Â HTMLÀÇ Á» ±ä ¹®´ÜÀ¸·Î ¿©·¯ ÁÙ·Î ÁٹٲÞÇÑ´Ù.
±× ù°ÁÙÀº ű×ÀÇ ÀÚµ¿ ºÐ¸® °è¼Ó¿¡ ÀÇÇÏ¿©
ÁöÁ¤µÇ¾ú´Ù. ´Ù¸¥ ÁÙµéÀº ¹®´Ü¿¡¼­
Á¤»óÀûÀÎ ÁٹٲÞÀ»ÇÑ´Ù.

¹Ù²ï ÁÙµéÀº ´ÙÀ½°ú °°´Ù:

THIS IS A SOMEWHAT LONG HTML PARAGRAPH THAT
will be broken into several lines. The first
line will be identified by a fictional tag
sequence. The other lines will be treated
as ordinary lines in the paragraph.

»ç¿ëµµ±¸µé¿¡ ÀÇÇÏ¿©, :first-lineÀÇ Å±×ÀÇ ÀÚµ¿ ºÐ¸® °è¼Ó(fictional tag sequence)À» Æ÷ÇÔÇÏ¿©, ´Ù½Ã ¾²¿© Áú ¼ö ÀÖ´Ù. ÀÌ Å±×ÀÇ ÀÚµ¿ ºÐ¸® °è¼ÓÀº ¾î¶»°Ô ¼Ó¼ºµéÀÌ Àü´Þ(inherit)µÇ´Â°¡¸¦ º¸¿© Áִµ¥ µµ¿òÀ» ÁØ´Ù.

<P><P:first-line> This is a somewhat long HTML
paragraph that will </P:first-line> be broken into several
lines. The first line will be identified
by a fictional tag sequence. The other lines
will be treated as ordinary lines in the paragraph.</P>

¸¸ÀÏ °¡»ó ¿¤·¹¸àÆ®°¡ ½ÇÁ¦ ¿¤·¹¸àÆ®¸¦ ÀÚ¸£¸é(break), ¿øÇÏ´Â È¿°ú´Â ÀÚÁÖ, ±× ¿¤·¹¸àÆ®¸¦ ´Ý°í ´Ù½Ã ¿­¼ö ÀÖ´Â, ű×ÀÇ ÀÚµ¿ ºÐ¸® °è¼ÓÀ¸·Î ¼³¸íµÉ ¼ö ÀÖ´Ù. µû¶ó¼­, ¸¸ÀÏ SPAN ¿¤·¹¸àÆ®·Î ¾ÕÀÇ ¹®´ÜÀ» ¾²¸é(mark up):

<P><SPAN class="test"> This is a somewhat long HTML
paragraph that will be broken into several
lines.</SPAN> The first line will be identified
by a fictional tag sequence. The other lines
will be treated as ordinary lines in the paragraph.</P>

»ç¿ëµµ±¸´Â, :first-line¿¡¼­ ű×ÀÇ ÀÚµ¿ ºÐ¸® °è¼Ó(fictional tag sequence)À» »ðÀÔÇÒ ¶§, SPANÀÇ ÀûÁ¤ÇÑ ½ÃÀÛ°ú Á¾·á ű׸¦ »ý¼ºÇÒ ¼ö ÀÖ´Ù.

<P><P:first-line><SPAN class="test"> This is a
somewhat long HTML
paragraph that will </SPAN></P:first-line><SPAN class="test"> be
broken into several
lines.</SPAN> The first line will be identified
by a fictional tag sequence. The other lines
will be treated as ordinary lines in the
paragraph.</P>

:first-line °¡»ó ¿¤·¹¸àÆ®´Â ºí·°·¹º§(block-level) ¿¤·¹¸àÆ®¿¡ ¸¸ ÷ºÎµÉ ¼ö ÀÖ´Ù.

:first-line °¡»ó ¿¤·¹¸àÆ®´Â ÀζóÀÎ(inline-level) ¿¤·¹¸àÆ®¿Í À¯»çÇϳª Á¦¾àµéÀÌ ÀÖ´Ù.
´ÙÀ½ ¼Ó¼ºµé ¸¸ÀÌ :first-line °¡»ó ¿¤·¹¸àÆ®(pseudo-element)¿¡ Àû¿ëµÈ´Ù:
font ¼Ó¼º, color ¼Ó¼º, ¹è°æ ¼Ó¼º, 'word-spacing', 'letter-spacing', 'text-decoration', 'vertical-align', 'text-transform', 'line-height', 'text-shadow', 'clear'.

5.12.2 :first-letter °¡»ó ¿¤·¹¸àÆ®(pseudo-element)

:first-letter °¡»ó ¿¤·¹¸àÆ®´Â, ÀÏ¹Ý Àμâ¼úÀÇ È¿°ú¸¦ ³»´Â, "ÃÖÃÊ ´ë¹®ÀÚ(initial cap)"¿Í "Æ¢´Â ´ë¹®ÀÚ(drop cap)"¸¦ À§ÇÏ¿© »ç¿ëµÉ ¼ö ÀÖ´Ù. ÀÌ ÃÖÃÊ ±ÛÀÚÀÇ Å¸ÀÔÀº, ¸¸ÀÏ ±× 'float' ¼Ó¼ºÀÌ 'none'À̸é, ÀζóÀÎ(inline-level) ¿¤·¹¸àÆ®¿Í À¯»ç¸ç, ±×·¸Áö ¾ÊÀ¸¸é À¯µ¿(floated) ¿¤·¹¸àÆ®¿Í À¯»çÇÏ´Ù.

¾Æ·¡´Â :first-letter °¡»ó ¿¤·¹¸àÆ®¿¡ ÀÛ¿ëÇÏ´Â ¼Ó¼ºµéÀÌ´Ù:
font ¼Ó¼º, color ¼Ó¼º, ¹è°æ ¼Ó¼º, 'text-decoration', 'vertical-align'('float'°¡ 'none'ÀÏ ¶§ ¸¸), 'text-transform', 'line-height', ¸¶Áø(margin) ¼Ó¼º, Æеù(padding) ¼Ó¼º, Å׵θ®(border) ¼Ó¼º, 'float', 'text-shadow', 'clear'.

´ÙÀ½ CSS2·Î ÃÖÃÊ ±ÛÀÚ¸¦ Æ¢´Â ´ë¹®ÀÚ(drop cap)·Î µÎ ÁÙ¿¡ È®ÀåÇÑ´Ù:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
  <HEAD>
    <TITLE>ÃÖÃÊ ±ÛÀÚ¸¦ Æ¢´Â ´ë¹®ÀÚ(drop cap)·Î</TITLE>
    <STYLE type="text/css">
       P { font-size: 12pt; line-height: 12pt }
       P:first-letter { font-size: 200%; font-style: italic; font-weight: bold; float: left }
       SPAN { text-transform: uppercase }
    </STYLE>
  </HEAD>
  <BODY>
    <P><SPAN>The first</SPAN> few words of an article in The Economist.</P>
  </BODY>
</HTML>

ÀÌ ¿¹Á¦´Â ´ÙÀ½°ú °°ÀÌ ¾ç½ÄÈ­µÈ´Ù:

:first-letter ¿Í :first-line °¡»ó ¿¤·¹¸àÆ®(pseudo-element)µéÀÇ °áÇÕ È¿°ú¸¦ ¼³¸íÇÏ´Â À̹ÌÁö   [D]

ű×ÀÇ ÀÚµ¿ ºÐ¸® °è¼ÓÀº :

<P>
<SPAN>
<P:first-letter>T</P:first-letter>he first
</SPAN>
few words of an article in the Economist.
</P>

:first-letter °¡»ó ¿¤·¹¸àÆ® ű׵éÀº ±× ³»¿ë(ÃÖÃÊ ±ÛÀÚ) ÁÖÀ§¿¡ À§Ä¡ÇÏ°í, :first-line °¡»ó ¿¤·¹¸àÆ®ÀÇ ½ÃÀÛ Å±״Â, ±× °ÍÀÌ Ã·ºÎµÈ ¿¤·¹¸àÆ®ÀÇ ½ÃÀÛ ÅÂ±× ¹Ù·Î ´ÙÀ½¿¡, ¿À¸¥ÂÊ¿¡ »ðÀԵȴ٠°Í¿¡ À¯ÀÇÇ϶ó.

ÀüÅëÀû Æ¢´Â ´ë¹®ÀÚ(drop cap)µéÀÇ ¾ç½ÄÈ­¸¦ ´Þ¼ºÇϱâ À§ÇÏ¿©, »ç¿ëµµ±¸µéÀº, ¿¹¸¦ µé¾î ±âÃʶóÀÎ(baseline)¿¡ Á¤·ÄÇÏ´Â µî, ±Û²Ã Å©±â¸¦ ´ë·«È­(approximate)ÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ, ¾ç½ÄÈ­µÉ ¶§, ±× ±×¸²¹®ÀÚÀÇ ¾Æ¿ìÆ®¶óÀÎ(outline)ÀÌ °í·ÁµÉ ¼ö ÀÖ´Ù.

ù¹ø° ±ÛÀÚ ¾Õ¿¡¿À´Â ±¸µÔÁ¡(¸»ÇÏÀÚ¸é, Unicode [UNICODE]¿¡¼­ "open" (Ps), "close" (Pe), "other" (Po) ±¸µÔÁ¡ Ŭ¶ó½º¿¡ Á¤ÀÇµÈ ±ÛÀÚ)À» Æ÷ÇÔÇÏ¿©¾ß ÇÑ´Ù:

ù¹ø° ±ÛÀÚ ¾ÕÀÇ µû¿ÈÇ¥¸¦ Æ÷ÇÔÇÏ´Â ¿¹Á¦ À̹ÌÁö.   [D]

:first-letter °¡»ó ¿¤·¹¸àÆ®´Â ºí·°·¹º§(block-level) ¿¤·¹¸àÆ®ÀÇ ºÎºÐÀ¸·Î ¸¸ ÀÏÄ¡ÇÑ´Ù.

ÀϺΠ¾ð¾î´Â ±ÛÀÚ °áÇÕÇÏ´Â ¹æ¹ý¿¡ ƯÁ¤ ¸í·ÉÀÌ »ç¿ëµÉ ¼ö ÀÖ´Ù. ¿¹¸¦ µé¾î, Ȧ·£µå¾î(Dutch)¿¡¼­, ¸¸ÀÏ ´Ü¾îÀÇ ½ÃÀÛ¿¡ "ij"ÀÇ ±ÛÀÚ Á¶ÇÕÀÌ ³ªÅ¸³ª¸é, µÎ ±ÛÀÚµé ¸ðµÎ :first-letter °¡»ó ¿¤·¹¸àÆ® ¾È¿¡ ÀÖ´Â °ÍÀ¸·Î °í·ÁµÇ¾î¾ß ÇÑ´Ù,

¿¹Á¦:

´ÙÀ½ ¿¹Á¦´Â ¾î¶»°Ô °¡»ó ¿¤·¹¸àÆ®(pseudo-element)µéÀÌ Áßø(overlapping)µÇ´Â°¡¸¦ ¼³¸íÇÑ´Ù. °¢ P ¿¤·¹¸àÆ®ÀÇ Ã¹¹ø° ±ÛÀÚ´Â ±Û²Ã Å©±â '24pt'·Î ³ì»öÀÌ µÈ´Ù. ù¹ø° ¾ç½ÄÈ­µÈ ÁÙÀÇ ³ª¸ÓÁö ºÎºÐÀº û»ö('blue')ÀÌ°í, ¹®´ÜÀÇ ³ª¸ÓÁö ºÎºÐÀº Àû»ö('red')ÀÌ µÈ´Ù.

P { color: red; font-size: 12pt }
P:first-letter { color: green; font-size: 200% }
P:first-line { color: blue }

<P>Some text that ends up on two lines</P>

´Ü¾î "ends" ¾Õ¿¡¼­ ÁٹٲÞÀ» ÇÑ´Ù°í °¡Á¤Çϸé, ű×ÀÇ ÀÚµ¿ ºÐ¸® °è¼Ó(fictional tag sequence)Àº ÀÌ ºÎºÐÀ» ´ÙÀ½°ú °°ÀÌ µÈ´Ù:

<P>
<P:first-line>
<P:first-letter>
S
</P:first-letter>ome text that
</P:first-line>
ends up on two lines
</P>

:first-letter ¿¤·¹¸àÆ®´Â :first-line ¿¤·¹¸àÆ® ¾È¿¡ ÀÖ´Ù´Â Á¡¿¡ À¯ÀÇÇ϶ó. :first-line¿¡ ¼³Á¤µÈ ¼Ó¼ºµéÀº :first-letter¿¡ Àü´Þ(inherit)ÇÑ´Ù. ±×·¯³ª ¸¸ÀÏ °°Àº ¼Ó¼ºÀÌ ´Ù½Ã :first-letter¿¡ ¼³Á¤µÇ¾úÀ¸¸é µ¤¾î¾º¿ö(override)Áø´Ù.

5.12.3 :before¿Í :after °¡»ó ¿¤·¹¸àÆ®(pseudo-element)

':before'¿Í ':after' °¡»ó ¿¤·¹¸àÆ®µéÀº, ¿¤·¹¸àÆ® ³»¿ëÀÇ ¾Õ(before) ¶Ç´Â µÚ(after)¿¡ »ý¼ºµÈ ³»¿ëÀ» »ðÀÔÇϱâ À§ÇÏ¿© »ç¿ëµÉ ¼ö ÀÖ´Ù. »ý¼ºµÈ ÅؽºÆ® Ç׸ñ¿¡ ¼³¸íµÇ¾î ÀÖ´Ù.

¿¹Á¦:

H1:before {content: counter(chapno, upper-roman) ". "}

:first-letter, :first-line °¡»ó ¿¤·¹¸àÆ®µéÀÌ :before, :after¿Í °áÇյǸé, »ðÀÔµÈ ÅؽºÆ®¸¦ Æ÷ÇÔÇÏ¿©±× ¿¤·¹¸àÆ®ÀÇ Ã¹¹ø° ±ÛÀÚ ¶Ç´Â ÁÙ¿¡ Àû¿ëµÈ´Ù.

¿¹Á¦:

P.special:before { content: "Special! "}
P.special:first-letter { color: #ffd800}

ÀÌ´Â "Special!"ÀÇ "S"¸¦ ±Ý»ö(gold)À¸·Î Ç¥ÇöÇÑ´Ù.


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