±¾ÎÄÄÚÈݲ¿·ÖÀ´×ÔÓÚhttps://developer.mozilla.org/zh-CN/docs/Learn/CSS
Ñ¡ÔñÆ÷¿ÉÒÔ±»·ÖΪÒÔÏÂÀà±ð£º
¼òµ¥Ñ¡ÔñÆ÷£¨Simple selectors£©£ºÍ¨¹ýÔªËØÀàÐÍ¡¢class »ò id Æ¥ÅäÒ»¸ö»ò¶à¸öÔªËØ¡£ÊôÐÔÑ¡ÔñÆ÷£¨Attribute selectors£©£ºÍ¨¹ý ÊôÐÔ / ÊôÐÔÖµ Æ¥ÅäÒ»¸ö»ò¶à¸öÔªËØ¡£Î±ÀࣨPseudo-classes£©£ºÆ¥Åä´¦ÓÚÈ·¶¨×´Ì¬µÄÒ»¸ö»ò¶à¸öÔªËØ£¬±ÈÈç±»Êó±êÖ¸ÕëÐüÍ£µÄÔªËØ£¬»òµ±Ç°±»Ñ¡ÖлòδѡÖеĸ´Ñ¡¿ò£¬»òÔªËØÊÇDOMÊ÷ÖÐÒ»¸¸½ÚµãµÄµÚÒ»¸ö×Ó½Úµã¡£Î±ÔªËØ£¨Pseudo-elements£©:Æ¥Åä´¦ÓÚÏà¹ØµÄÈ·¶¨Î»ÖõÄÒ»¸ö»ò¶à¸öÔªËØ£¬ÀýÈçÿ¸ö¶ÎÂäµÄµÚÒ»¸ö×Ö£¬»òÕßij¸öÔªËØÖ®Ç°Éú³ÉµÄÄÚÈÝ¡£ ×éºÏÆ÷£¨Combinators£©£ºÕâÀï²»½ö½öÊÇÑ¡ÔñÆ÷±¾Éí£¬»¹ÓÐÒÔÓÐЧµÄ·½Ê½×éºÏÁ½¸ö»ò¸ü¶àµÄÑ¡ÔñÆ÷ÓÃÓڷdz£Ìض¨µÄÑ¡ÔñµÄ·½·¨¡£ÀýÈ磬Äã¿ÉÒÔֻѡÔñdivsµÄֱϵ×Ó½ÚµãµÄ¶ÎÂ䣬»òÕßÖ±½Ó¸úÔÚheadingsºóÃæµÄ¶ÎÂä¡£¶àÖØÑ¡ÔñÆ÷£¨Multiple selectors£©£ºÕâЩҲ²»Êǵ¥¶ÀµÄÑ¡ÔñÆ÷£»Õâ¸ö˼·Êǽ«ÒÔ¶ººÅ·Ö¸ô¿ªµÄ¶à¸öÑ¡ÔñÆ÷·ÅÔÚÒ»¸öCSS¹æÔòÏÂÃæ£¬ ÒÔ½«Ò»×éÉùÃ÷Ó¦ÓÃÓÚÓÉÕâЩѡÔñÆ÷Ñ¡ÔñµÄËùÓÐÔªËØ¡£
¼òµ¥Ñ¡ÔñÆ÷
ÓÖ³ÆÀàÐÍÑ¡ÔñÆ÷£¨ÓÖÃûÔªËØÑ¡ÔñÆ÷£©
ÕâÊÇHTML:
<p>What color do you like?</p><div>I like blue.</div><p>I prefer red!</p>
ÕâÊÇÑùʽ±í:
/* All p elements are red */p { ?color: red;}/* All div elements are blue */div { ?color: blue;}
ÎÒÃǽ«µÃµ½Õâ¸ö£º
ÀàÑ¡ÔñÆ÷
ÀàÑ¡ÔñÆ÷ÓÉÒ»¸öµã¡°.¡±ÒÔ¼°ÀàºóÃæµÄÀàÃû×é³É¡£ÀàÃûÊÇÔÚHTML classÎĵµÔªËØÊôÐÔÖÐûÓпոñµÄÈκÎÖµ¡£ÓÉÄã×Ô¼ºÑ¡ÔñÒ»¸öÃû×Ö¡£Í¬ÑùÖµµÃÒ»ÌáµÄÊÇ£¬ÎĵµÖеĶà¸öÔªËØ¿ÉÒÔ¾ßÓÐÏàͬµÄÀàÃû£¬¶øµ¥¸öÔªËØ¿ÉÒÔÓжà¸öÀàÃû(ÒÔ¿Õ¸ñ·Ö¿ª¶à¸öÀàÃûµÄÐÎʽÊéд)
ÕâÊÇһЩHTML£º
<ul> ?<li class="first done">Create an HTML document</li> ?<li class="second done">Create a CSS style sheet</li> ?<li class="third">Link them all together</li></ul>
ÕâÊÇһЩCSSÑùʽ:
/* The element with the class "first" is bolded */.first { ?font-weight: bold;}/* All the elements with the class "done" are strike through */.done { ?text-decoration: line-through;}
ÎÒÃǵõ½ÕâÑùÒ»¸ö½á¹û:
ID Ñ¡ÔñÆ÷
IDÑ¡ÔñÆ÷ÓɹþÏ£/°õ·ûºÅ (#)×é³É£¬ºóÃæÊǸø¶¨ÔªËصÄIDÃû³Æ¡£ ÈκÎÔªËØ¶¼¿ÉÒÔʹÓÃidÊôÐÔÉèÖÃΨһµÄIDÃû³Æ¡£ ÓÉÄã×Ô¼ºÑ¡ÔñµÄIDÊÇʲô¡£ ÕâÊÇÑ¡Ôñµ¥¸öÔªËØµÄ×îÓÐЧµÄ·½Ê½¡£
ÖØÒªÌáʾ£ºÒ»¸öIDÃû³Æ±ØÐëÔÚÎļþÖÐÊÇΨһµÄ¡£¹ØÓÚÖØ¸´IDµÄÐÐΪÊDz»¿ÉÔ¤²âµÄ£¬±ÈÈçÔÚһЩä¯ÀÀÆ÷Ö»ÊǵÚÒ»¸öʵÀý¼ÆË㣬ÆäÓàµÄ½«±»ºöÂÔ¡£
ÎÒÃÇÀ´¿´Ò»¸ö¼òµ¥µÄÀý×Ó - ÕâÊÇHTML£º
<p id="polite"> ¡ª "Good morning."</p><p id="rude"> ¡ª "Go away!"</p>
ÕâÊÇÑùʽ±í£º
#polite { ?font-family: cursive;}#rude { ?font-family: monospace; ?text-transform: uppercase;}
¶øÎÒÃǵõ½Õâ¸ö×÷ΪÊä³ö£º
ͨÓÃÑ¡ÔñÆ÷
ͨÓÃÑ¡Ôñ£¨*£©ÊÇ×îÖÕµÄÍõÅÆ¡£ËüÔÊÐíÑ¡ÔñÔÚÒ»¸öÒ³ÃæÖеÄËùÓÐÔªËØ¡£ÓÉÓÚ¸øÃ¿¸öÔªËØÓ¦ÓÃͬÑùµÄ¹æÔò¼¸ºõûÓÐʲôʵ¼Ê¼ÛÖµ£¬¸ü³£¼ûµÄ×ö·¨ÊÇÓëÆäËûÑ¡ÔñÆ÷½áºÏʹÓÃ
ÖØÒªÌáʾ£ºÊ¹ÓÃͨÓÃÑ¡ÔñʱСÐÄ¡£ÒòΪËüÊÊÓÃÓÚËùÓеÄÔªËØ£¬ÔÚ´óÐÍÍøÒ³ÀûÓÃËü¿ÉÄܶÔÐÔÄÜÓÐÃ÷ÏÔµÄÓ°Ïì£ºÍøÒ³¿ÉÄÜÏÔʾ±ÈÔ¤ÆÚÒªÂý¡£´ó¶àÊýÇé¿öÏ£¬Äã¶¼²»»áʹÓÃÕâ¸öÑ¡ÔñÆ÷¡£
ÀýÈ磬ÕâÊÇHTML£º
<div> ?<p>I think the containing box just needed ?a <strong>border</strong> or <em>something</em>, ?but this is getting <strong>out of hand</strong>!</p></div>
ÕâÊÇÑùʽ±í£º
* { ?padding: 5px; ?border: 1px solid black; ?background: rgba(255,0,0,0.25)}
×éºÏÔÚÒ»Æð£¬»áµÃµ½ÕâÑùµÄ½á¹û£º
ÊôÐÔÑ¡ÔñÆ÷
ÊôÐÔÑ¡ÔñÆ÷ÊÇÒ»ÖÖÌØÊâÀàÐ͵ÄÑ¡ÔñÆ÷£¬Ëü¸ù¾ÝÔªËØµÄ ÊôÐÔ ºÍÊôÐÔÖµÀ´Æ¥ÅäÔªËØ¡£ËüÃǵÄͨÓÃÓï·¨ÓÉ·½À¨ºÅ ([]) ×é³É£¬ÆäÖаüº¬ÊôÐÔÃû³Æ£¬ºó¸ú¿ÉÑ¡Ìõ¼þÒÔÆ¥ÅäÊôÐÔµÄÖµ¡£ ÊôÐÔÑ¡ÔñÆ÷¿ÉÒÔ¸ù¾ÝÆäÆ¥ÅäÊôÐÔÖµµÄ·½Ê½·ÖΪÁ½Àࣺ ´æÔÚºÍÖµÊôÐÔÑ¡ÔñÆ÷ºÍ×Ó´®ÖµÊôÐÔÑ¡ÔñÆ÷¡£
´æÔÚºÍÖµ£¨Presence and value£©ÊôÐÔÑ¡ÔñÆ÷
ÕâЩÊôÐÔÑ¡ÔñÆ÷³¢ÊÔÆ¥Å侫ȷµÄÊôÐÔÖµ£º
[attr]£º¸ÃÑ¡ÔñÆ÷Ñ¡Ôñ°üº¬ attr ÊôÐÔµÄËùÓÐÔªËØ£¬²»ÂÛ attr µÄֵΪºÎ¡£[attr=val]£º¸ÃÑ¡ÔñÆ÷½öÑ¡Ôñ attr ÊôÐÔ±»¸³ÖµÎª val µÄËùÓÐÔªËØ¡£[attr~=val]£º¸ÃÑ¡ÔñÆ÷½öÑ¡Ôñ¾ßÓÐ attr ÊôÐÔµÄÔªËØ£¬¶øÇÒÒªÇó val ÖµÊÇ attr Öµ°üº¬µÄ±»¿Õ¸ñ·Ö¸ôµÄȡֵÁбíÀïÖеÄÒ»¸ö¡£
ÈÃÎÒÃÇ¿´Ò»¸öÌØ±ðµÄÀý×Ó£¬ÏÂÃæÊÇËüµÄµÄHTML´úÂ룺
ÎÒµÄʳÆ×ÅäÁÏ: <i lang="fr-FR">Poulet basquaise</i><ul> ?<li data-quantity="1kg" data-vegetable>Tomatoes</li> ?<li data-quantity="3" data-vegetable>Onions</li> ?<li data-quantity="3" data-vegetable>Garlic</li> ?<li data-quantity="700g" data-vegetable="not spicy like chili">Red pepper</li> ?<li data-quantity="2kg" data-meat>Chicken</li> ?<li data-quantity="optional 150g" data-meat>Bacon bits</li> ?<li data-quantity="optional 10ml" data-vegetable="liquid">Olive oil</li> ?<li data-quantity="25cl" data-vegetable="liquid">White wine</li></ul>
ºÍÒ»¸ö¼òµ¥µÄÑùʽ±í£º
/* ËùÓоßÓÐ"data-vegetable"ÊôÐÔµÄÔªËØ½«±»Ó¦ÓÃÂÌÉ«µÄÎı¾ÑÕÉ« */[data-vegetable] { ?color: green}/* ËùÓоßÓÐ"data-vegetable"ÊôÐÔÇÒÊôÐÔÖµ¸ÕºÃΪ"liquid"µÄÔªËØ½«±»Ó¦ÓýðÉ«µÄ±³¾°ÑÕÉ« */[data-vegetable="liquid"] { ?background-color: goldenrod;}/* ËùÓоßÓÐ"data-vegetable"ÊôÐÔÇÒÊôÐÔÖµ°üº¬"spicy"µÄÔªËØ£¬¼´Ê¹ÔªËصÄÊôÐÔÖл¹°üº¬ÆäËûÊôÐÔÖµ£¬¶¼»á±»Ó¦ÓúìÉ«µÄÎı¾ÑÕÉ« */[data-vegetable~="spicy"] { ?color: red;}
½á¹ûÈçÏ£º
×Ó´®Öµ£¨Substring value£©ÊôÐÔÑ¡ÔñÆ÷
ÕâÖÖÇé¿öµÄÊôÐÔÑ¡ÔñÆ÷Ò²±»³ÆÎª¡°Î±ÕýÔòÑ¡ÔñÆ÷¡±£¬ÒòΪËüÃÇÌṩÀàËÆ regular expression µÄÁé»îÆ¥Å䷽ʽ£¨µ«Çë×¢Ò⣬ÕâЩѡÔñÆ÷²¢²»ÊÇÕæÕýµÄÕýÔò±í´ïʽ£©£º
[attr|=val] : Ñ¡ÔñattrÊôÐÔµÄÖµÊÇ val »òÖµÒÔ val- ¿ªÍ·µÄÔªËØ£¨×¢Ò⣬ÕâÀïµÄ ¡°-¡± ²»ÊÇÒ»¸ö´íÎó£¬ÕâÊÇÓÃÀ´´¦ÀíÓïÑÔ±àÂëµÄ£©¡£[attr^=val] : Ñ¡ÔñattrÊôÐÔµÄÖµÒÔ val ¿ªÍ·£¨°üÀ¨ val£©µÄÔªËØ¡£[attr$=val] : Ñ¡ÔñattrÊôÐÔµÄÖµÒÔ val ½á⣨°üÀ¨ val£©µÄÔªËØ¡£[attr*=val] : Ñ¡ÔñattrÊôÐÔµÄÖµÖаüº¬×Ó×Ö·û´® val µÄÔªËØ£¨Ò»¸ö×Ó×Ö·û´®¾ÍÊÇÒ»¸ö×Ö·û´®µÄÒ»²¿·Ö¶øÒÑ£¬ÀýÈ磬¡±cat¡° ÊÇ ×Ö·û´® ¡±caterpillar¡° µÄ×Ó×Ö·û´®£©¡£
ÈÃÎÒÃǼÌÐøÎÒÃÇÇ°ÃæµÄÀý×Ó£¬²¢Ìí¼ÓÒÔÏÂCSS¹æÔò£º
/* ÓïÑÔÑ¡ÔñµÄ¾µäÓ÷¨ */[lang|="fr"] { ?font-weight: bold;}/* ????¾ßÓÐ"data-vegetable"ÊôÐÔº¬ÓÐÖµ"not spicy"µÄËùÓÐÔªËØ,¶¼±ä»ØÂÌÉ«*/[data-vegetable*="not spicy"] { ?color: green;}/* ???¾ßÓÐ"data-quantity"ÊôÐÔÆäÖµÒÔ"kg"½áβµÄËùÓÐÔªËØ*/[data-quantity$="kg"] { ?font-weight: bold;}/* ???¾ßÓÐÊôÐÔ"data-quantity"ÆäÖµÒÔ"optional"¿ªÍ·µÄËùÓÐÔªËØ */[data-quantity^="optional"] { ?opacity: 0.5;}
ÓÐÁËÕâЩÐµĹæÔò£¬ÎÒÃÇ»áµÃµ½Õâ¸ö£º
αÀࣨPseudo-class£©
Ò»¸ö CSS ?αÀࣨpseudo-class£© ÊÇÒ»¸öÒÔðºÅ(:)×÷Ϊǰ׺£¬±»Ìí¼Óµ½Ò»¸öÑ¡ÔñÆ÷ĩβµÄ¹Ø¼ü×Ö£¬µ±ÄãÏ£ÍûÑùʽÔÚÌØ¶¨×´Ì¬Ï²ű»³ÊÏÖµ½Ö¸¶¨µÄÔªËØÊ±£¬Äã¿ÉÒÔÍùÔªËØµÄÑ¡ÔñÆ÷ºóÃæ¼ÓÉ϶ÔÓ¦µÄαÀࣨpseudo-class£©¡£Äã¿ÉÄÜÏ£Íûij¸öÔªËØÔÚ´¦ÓÚijÖÖ״̬ϳÊÏÖÁíÒ»ÖÖÑùʽ£¬ÀýÈçµ±Êó±êÐüÍ£ÔÚÔªËØÉÏÃæÊ±£¬»òÕßµ±Ò»¸ö¸´Ñ¡¿ò±»½ûÓûò±»¹´Ñ¡Ê±£¬ÓÖ»òÕßµ±Ò»¸öÔªËØÊÇËüÔÚ DOM Ê÷Öи¸ÔªËصĵÚÒ»¸ö×ÓÔªËØÊ±¡£
???:active ???:any ???:checked ???:default ???:dir() ???:disabled ???:empty ???:enabled ???:first ???:first-child ???:first-of-type ???:fullscreen ???:focus ???:hover ???:indeterminate ???:in-range ???:invalid ???:lang() ???:last-child ???:last-of-type ???:left ???:link ???:not() ???:nth-child() ???:nth-last-child() ???:nth-last-of-type() ???:nth-of-type() ???:only-child ???:only-of-type ???:optional ???:out-of-range ???:read-only ???:read-write ???:required ???:right ???:root ???:scope ???:target ???:valid ???:visited
ÏÖÔÚ£¬ÈÃÎÒÃÇÀ´¿´Ò»¸ö¼òµ¥µÄʹÓÃÀý×Ó¡£Ê×ÏÈÊÇÒ»¸ö HTML Ƭ¶Î£º
<a href="https://developer.mozilla.org/" target="_blank">Mozilla Developer Network</a>
È»ºó£¬Ò»Ð© CSS Ñùʽ£º
/* ÕâЩÑùʽ½«ÔÚÈκÎÇé¿öÏÂÓ¦ÓÃÓÚÎÒÃǵÄÁ´½Ó */a { ?color: blue; ?font-weight: bold;}/* ÎÒÃÇÏëÈñ»·ÃÎʹýµÄÁ´½ÓºÍδ±»·ÃÎʵÄÁ´½Ó¿´ÆðÀ´Ò»Ñù */a:visited { ?color: blue;}/* µ±¹â±êÐüÍ£ÓÚÁ´½Ó£¬¼üÅ̼¤»î»òËø¶¨Á´½Óʱ£¬ÎÒÃÇÈÃÁ´½Ó³ÊÏÖ¸ßÁÁ */a:hover,a:active,a:focus { ?color: darkred; ?text-decoration: none;}
ÎÒÃǵõ½ÒÔϽá¹û
Î±ÔªËØ£¨Pseudo-element£©
¸úαÀàºÜÏñ£¬µ«ËüÃÇÓÖÓв»Í¬µÄµØ·½¡£ËüÃǶ¼Êǹؼü×Ö£¬µ«Õâ´ÎÎ±ÔªËØÇ°×ºÊÇÁ½¸öðºÅ (::) £¬ ͬÑùÊÇÌí¼Óµ½Ñ¡ÔñÆ÷ºóÃæÈ¥Ñ¡Ôñij¸öÔªËØµÄij¸ö²¿·Ö¡£
???::after ???::before ???::first-letter ???::first-line ???::selection ???::backdrop
ÎÒÃÇÔÚÕâÀï½öչʾһ¸ö¼òµ¥µÄ CSS Àý×Ó£¬¾ÍÊÇÈçºÎÔÚËùÓг¬Á´½ÓÔªËØºóÃæµÄÔö¼ÓÒ»¸ö¼ýÍ·£º
<ul> ?<li><a href="https://developer.mozilla.org/en-US/docs/Glossary/CSS">CSS</a> defined in the MDN glossary.</li> ?<li><a href="https://developer.mozilla.org/en-US/docs/Glossary/HTML">HTML</a> defined in the MDN glossary.</li></ul>
ÈÃÎÒÃǼÓÉÏ CSS ¹æÔò£º
/* ËùÓк¬ÓÐ"href"ÊôÐÔ²¢ÇÒÖµÒÔ"http"¿ªÊ¼µÄÔªËØ£¬½«»áÔÚÆäÄÚÈݺóÔö¼ÓÒ»¸ö¼ýÍ·£¨È¥±íÃ÷ËüÊÇÍⲿÁ´½Ó£©*/[href^=http]::after { ?content: ¡®?¡®;}
ÎÒÃÇ¿ÉÒԵõ½ÕâÑùµÄЧ¹û£º
×éºÏÆ÷ºÍÑ¡ÔñÆ÷×é
×éºÏÆ÷ʾÀý
<table lang="en-US" class="with-currency"> ?<thead> ???<tr> ?????<th scope="col">Product</th> ?????<th scope="col">Qty.</th> ?????<th scope="col">Price</th> ???</tr> ?</thead> ?<tfoot> ???<tr> ?????<th colspan="2" scope="row">Total:</th> ?????<td>148.55</td> ???</tr> ?</tfoot> ?<tbody> ???<tr> ?????<td>Lawnchair</td> ?????<td>1</td> ?????<td>137.00</td> ???</tr> ???<tr> ?????<td>Marshmallow rice bar</td> ?????<td>2</td> ?????<td>1.10</td> ???</tr> ???<tr> ?????<td>Book</td> ?????<td>1</td> ?????<td>10.45</td> ???</tr> ?</tbody></table>
È»ºó¶Ô¸ÃHTMLÎĵµÓ¦ÓÃÏÂÃæµÄÑùʽ±í:
/* »ù±¾µÄtableÑùʽ */table { ?font: 1em sans-serif; ?border-collapse: collapse; ?border-spacing: 0;}/* ËùÓÐÔÚtableÀïµÄtdÒÔ¼°th£¬ÕâÀïµÄ¶ººÅ²»ÊÇÒ»¸ö×éºÏÆ÷£¬ ???ËüÖ»ÊÇÔÊÐíÄã°Ñ¼¸¸öÑ¡ÔñÆ÷¶ÔÓ¦µ½ÏàͬµÄCSS¹æÔòÉÏ.*/table td, table th { ?border : 1px solid black; ?padding: 0.5em 0.5em 0.4em;}/* ËùÓÐtableÀïµÄtheadÀïµÄËùÓÐth */table thead th { ?color: white; ?background: black;}/* ËùÓÐtableÀïµÄtbodyÀïµÄËùÓÐtd£¨µÚÒ»¸ö³ýÍ⣩£¬Ã¿¸ötd¶¼ÊÇÓÉËüÉϱߵÄtdÑ¡Ôñ */table tbody td + td { ?text-align: center;}/*tableÀïËùÓеÄtbodyÀïµÄtdµ±ÖеÄ×îºóÒ»¸ö */table tbody td:last-child { ?text-align: right}/* ËùÓÐtableÀïµÄtfootÀïµÄth */table tfoot th { ?text-align: right; ?border-top-width: 5px; ?border-left: none; ?border-bottom: none;}/* ÔÚtableµ±ÖУ¬ËùÓеÄthÖ®ºóµÄtd */table th + td { ?text-align: right; ?border-top-width: 5px; ?color: white; ?background: black;}/* ¶¨Î»ÔÚ¡°with-currency¡±ÀàÖÐÓµÓÐÊôÐÔlang²¢ÇÒÕâ¸öÊôÐÔֵΪen-USµÄÔªËØÖеģ¬×îºótd(:last-child)½ÚµãµÄÇ°Ãæ£¨::before£©*/.with-currency[lang="en-US"] td:last-child::before { ?content: ¡®$¡®;}/* ¶¨Î»ÔÚ¡°with-currency¡±ÀàÖÐÓµÓÐÊôÐÔlang²¢ÇÒÕâ¸öÊôÐÔֵΪfrµÄÔªËØÖеģ¬×îºótd(:last-child)½ÚµãµÄºóÃæ£¨::after£© */.with-currency[lang="fr"] td:last-child::after { ?content: ¡® €¡®;}
ÎÒÃǵõ½ÒÔϽá¹û
Îı¾Ñùʽ
ÓÃÓÚÑùʽÎı¾µÄ CSS ÊôÐÔͨ³£¿ÉÒÔ·ÖΪÁ½À࣬ÎÒÃǽ«ÔÚ±¾ÎÄÖзֱð¹Û²ì¡£
×ÖÌåÑùʽ: ×÷ÓÃÓÚ×ÖÌåµÄÊôÐÔ£¬»áÖ±½ÓÓ¦Óõ½Îı¾ÖУ¬±ÈÈçʹÓÃÄÄÖÖ×ÖÌ壬×ÖÌåµÄ´óСÊÇÔõÑùµÄ£¬×ÖÌåÊÇ´ÖÌ廹ÊÇбÌ壬µÈµÈ¡£Îı¾²¼¾Ö·ç¸ñ: ×÷ÓÃÓÚÎı¾µÄ¼ä¾àÒÔ¼°ÆäËû²¼¾Ö¹¦ÄܵÄÊôÐÔ£¬±ÈÈ磬ÔÊÐí²Ù×ÝÐÐÓë×ÖÖ®¼äµÄ¿Õ¼ä£¬ÒÔ¼°ÔÚÄÚÈÝ¿òÖУ¬Îı¾ÈçºÎ¶ÔÆë¡£
CSS Îı¾ÊôÐÔ£¨Text£©
2D/3D ת»»ÊôÐÔ£¨Transform£©
¹ý¶ÉÊôÐÔ£¨Transition£©
Óû§½çÃæÊôÐÔ£¨User-interface£©
???Ò²¿ÉÒÔѧϰ ???https://developer.mozilla.org/zh-CN/docs/Learn/CSS/%E4%B8%BA%E6%96%87%E6%9C%AC%E6%B7%BB%E5%8A%A0%E6%A0%B7%E5%BC%8F ????ÖеÄÄÚÈÝ
±ß¿òºÍ±³¾°
±³¾°
ÔªËØµÄ±³¾°ÊÇÖ¸£¬ÔÚÔªËØÄÚÈÝ¡¢Äڱ߾àºÍ±ß½çϲãµÄÇøÓò¡£Ä¬ÈÏÇé¿öϾÍÊÇÕâÑù¡ª¡ªÔÚеÄä¯ÀÀÆ÷ÖУ¬Äã¿ÉÒÔʹÓà background-clipÊôÐԸı䱳¾°ËùÕ¼ÓõÄÇøÓò£¨¸ü¶àϸ½Ú¼û CSS box model article background-clip coverage£©¡£
±³¾°²¢²»ÔÚÍâ±ß¾àϲ㡪¡ªÍâ±ß¾à²»ÊÇÔªËØÇøÓòµÄÒ»²¿·Ö£¬¶øÊÇÔªËØÍâÃæµÄÇøÓò¡£
»ù±¾ÄÚÈÝ£ºcolor, image, position, repeat
±³¾°ÑÕÉ«
Äã»á¾³£Ê¹Óà background-colorÊôÐÔ£º
Ê×ÏÈ£¬´ó¶àÊýÔªËØµÄĬÈϱ³¾°ÑÕÉ«²»ÊÇwhite (°×É«£¬Õâ¿ÉÄÜÈçÄãËùÁÏ) ¶øÊÇtransparent£¨Í¸Ã÷£©¡ª¡ªÒò´Ë£¬Èç¹ûÄú½«Ò»¸öÔªËØµÄ±³¾°ÑÕÉ«ÉèÖÃΪһЩÓÐȤµÄ¶«Î÷£¬µ«ÊÇÏ£ÍûËüµÄ×ÓÔªËØÊǰ×É«µÄ£¬ÄÇôÄú¾Í±ØÐëÃ÷È·µØÉèÖÃËü¡£´ËÍ⣬ÉèÖñ³¾°ÑÕÉ«×÷Ϊºó±¸Ò²ÊǺÜÖØÒªµÄ¡£±³¾°ÑÕÉ«ÔÚ¸÷´¦¶¼µÃµ½ÁËÖ§³Ö£¬¶ø±³¾°ÌݶȵȸüÆæÒìµÄÌØÐÔÖ»ÔÚ½ÏеÄä¯ÀÀÆ÷Öеõ½Ö§³Ö£¬¼ÓÉϱ³¾°Í¼Ïñ¿ÉÄÜÓÉÓÚijÖÖÔÒòÎÞ·¨¼ÓÔØ¡£Òò´Ë£¬ÉèÖûù±¾µÄ±³¾°ÑÕÉ«ºÍÖ¸¶¨ÕâÐ©ÌØÐÔÊÇÒ»¸öºÃÖ÷Ò⣬Òò´ËÎÞÂÛÈçºÎ£¬ÔªËصÄÄÚÈݶ¼ÊǿɶÁµÄ¡£
ÈÃÎÒÃÇ´Ó¹¹½¨Ò»¸öʾÀý¿ªÊ¼¡£ÎÒÃÇ´ÓһЩ¼òµ¥µÄHTML¿ªÊ¼£º
<p>Exciting box!</p>
ÎÒÃǸøËüÒ»¸ö±³¾°É«£º
p { ?font-family: sans-serif; ?padding: 20px; ?/* background properties */ ?background-color: yellow;}
Æä½á¹ûÈçÏ£º
±³¾°Í¼Ïñ
background-image ÊôÐÔÖ¸¶¨ÁËÔÚÔªËØ±³¾°ÖÐÏÔʾµÄ±³¾°Í¼Ïñ¡£¸ÃÊôÐÔ×î¼òµ¥µÄÓ÷¨ÊÇʹÓà url() º¯Êý¡ª¡ªËüÒÔÒ»¸ö²ÎÊýµÄ·¾¶×÷Ϊ²ÎÊý¡ª¡ª»ñȡһ¸ö¾²Ì¬Í¼ÏñÎļþÀ´²åÈë¡£
ÈÃÎÒÃÇΪÉÏÃæµÄÀý×ÓÌí¼ÓÒ»¸ö±³¾°Í¼Ïñ£º
p { ?font-family: sans-serif; ?padding: 20px; ?/* background properties */ ?background-color: yellow; ?background-image: url(https://mdn.mozillademos.org/files/13026/fire-ball-icon.png);}
½á¹ûÈçÏ£º
±³¾°Î»Öãº
background-position ÔÊÐíÎÒÃÇÔÚ±³¾°ÖÐÈÎÒâλÖ÷ÅÖñ³¾°Í¼Ïñ¡£Í¨³££¬¸ÃÊôÐÔ½«Ê¹ÓÃÁ½¸öͨ¹ý¿Õ¸ñ·Ö¸ôµÄÖµ£¬¸Ã¿Õ¼äÖ¸¶¨ÁËͼÏñµÄˮƽ(x)ºÍ´¹Ö±(y)×ø±ê¡£Í¼ÏñµÄ×óÉϽÇÊÇÔµã(0,0)¡£°Ñ±³¾°ÏëÏó³ÉÒ»¸öͼÐΣ¬x×ø±ê´Ó×óµ½ÓÒ£¬y×ø±ê´ÓÉϵ½Ï¡£
¸ÃÊôÐÔ¿ÉÒÔ½ÓÊÜÐí¶à²»Í¬µÄÖµÀàÐÍ£¬×î³£ÓõÄÊÇ£º
ÏñpxÕâÑùµÄ¾ø¶ÔÖµ¡ª¡ª±ÈÈç background-position: 200px 25px.Ïñrems ÕâÑùµÄÏà¶ÔÖµ¡ª¡ª±ÈÈç background-position: 20rem 2.5rem.°Ù·Ö±È ¡ª¡ª±ÈÈç background-position: 90% 25%.¹Ø¼ü×Ö¡ª¡ª±ÈÈç background-position: right center. ÕâÁ½¸öÖµÊÇÖ±¹ÛµÄ£¬¿ÉÒÔ·Ö±ðȡֵ±ÈÈç left£¬center£¬ rightºÍ top£¬center£¬ bottom¡£
ÄúÓ¦¸Ã×¢Ò⣬Äú¿ÉÒÔ»ìºÏ²¢Æ¥ÅäÕâЩֵ£¬±ÈÈç background-position: 99% center¡£»¹Òª×¢Ò⣬Èç¹ûÄúÖ»Ö¸¶¨Ò»¸öÖµ£¬ÄÇô¸ÃÖµ½«±»¼Ù¶¨ÎªË®Æ½Öµ£¬¶ø´¹Ö±Öµ½«Ä¬ÈÏΪcenter¡£
ÈÃÎÒÃÇÀ´ÐÞÕýÎÒÃǵÄÀý×Ó£º
p { ?font-family: sans-serif; ?padding: 20px; ?/* background properties */ ?background-color: yellow; ?background-image: url(https://mdn.mozillademos.org/files/13026/fire-ball-icon.png); ?background-repeat: no-repeat; ?background-position: 99% center;}
½á¹ûÈçÏ£º
±³¾°¸½×Å
ÁíÒ»¸ö¿É¹©Ñ¡ÔñµÄÑ¡ÏîÊÇÖ¸¶¨µ±ÄÚÈݹö¶¯Ê±ËüÃÇÊÇÈçºÎ¹ö¶¯µÄ¡£ÕâÊÇʹÓÃbackground-attachmentÊôÐÔÀ´¿ØÖƵ쬏ÃÊôÐÔ¿ÉÒÔʹÓÃÒÔÏÂÖµ£º
scroll: »áÊ¹ÔªËØµÄ±³¾°ÔÚÒ³Ãæ¹ö¶¯Ê±¹ö¶¯¡£Èç¹ûÔªËØÄÚÈݹö¶¯ÁË£¬±³¾°²¢²»»á¹ö¶¯¡£Êµ¼ÊÉÏ£¬±³¾°¹Ì¶¨ÔÚÁËÒ³ÃæÉÏÏàͬµÄλÖã¬ËùÒÔµ±Ò³Ãæ¹ö¶¯Ê±Ëü²Å¹ö¶¯¡£fixed: »áÊ¹ÔªËØµÄ±³¾°Ïà¶ÔÓÚÊӿڹ̶¨¡£Òò´Ë²»¹Üµ±Ò³Ã滹ÊÇÔªËØÄÚÈݹö¶¯Ê±£¬Ëü¶¼²»»á¹ö¶¯£¬Ëü»áʼÖÕ±£³ÖÔÚÆÁÄ»ÉÏÏàͬµÄλÖá£local:Õâ¸öÖµºóÀ´±»Ìí¼ÓÁË(ËüÖ»ÔÚInternet Explorer 9+Öеõ½Ö§³Ö£¬¶øÆäËûµÄÔòÔÚIE4+Öеõ½Ö§³Ö)£¬ÒòΪscrollÖµÏ൱»ìÂÒ£¬²¢ÇÒÔÚÐí¶àÇé¿öϲ¢Ã»ÓÐÕæÕý×öÄúÏëÒªµÄÊÂÇé¡£ ?local Öµ½«±³¾°ÉèÖÃΪËüËùÉèÖõÄÔªËØµÄ±³¾°£¬Òò´Ëµ±Äú¹ö¶¯ÔªËØÊ±£¬±³¾°»áËæÖ®¹ö¶¯¡£
background-attachment Ö»Óе±ÓÐÄÚÈÝÒª¹ö¶¯Ê±£¬ÊôÐԲŻáÓÐЧ¹û£¬ËùÒÔÎÒÃÇ×öÁËÒ»¸öÑÝʾÀ´ÑÝʾÕâÈý¸öÖµÖ®¼äµÄÇø±ð¡ª¡ªÄã¿ÉÒÔ¿´ background-attachment.html£¨Ò²¿ÉÒÔÔÚÕâÀï¿´Ô´Â룩¡£
CSS ±³¾°ÊôÐÔ£¨Background£©
±ß¿ò
±ß¿òÓÖ³Æ±ß½ç£¬ÔªËØÓÐÒ»¸ö±ß½ç£¬ËüλÓÚÔªËØµÄÄڱ߾à(padding)ºÍÍâ±ß¾à(margin)Ö®¼ä¡£Ä¬ÈÏÇé¿öÏ£¬±ß½çµÄ´óСΪ0£¬Ê¹Æä²»¿É¼û£¬µ«¿ÉÒÔÉèÖñ߽çµÄ´Öϸ¡¢ÑùʽºÍÑÕÉ«ÒÔʹÆäÏÔʾ³öÀ´¡£
±ß½ç¼òд
border¼òдÊôÐÔÔÊÐíÄãÒ»´Î½«ËùÓеÄÕâЩ¶¼ÉèÖÃÔÚËĸö±ß£¬ÀýÈ磺
<p>I have a red border!</p>p { ?padding: 10px; ?background: yellow; ?border: 2px solid red;}
CSS ±ß¿òÊôÐÔ£¨Border ºÍ Outline£©
CSS »ù´¡-Ñ¡ÔñÆ÷-±ß¿òºÍ±³¾°-Îı¾Ñùʽ
ÔÎĵØÖ·£ºhttp://blog.51cto.com/445153/2312869