CSS伪元素是用来添加一些选择器的特殊效果。用于:向某个选择器中的文字的首行。
㈠语法
①伪元素的语法:
selector:pseudo-element {property:value;}
②CSS类也可以使用伪元素:
selector.class:pseudo-element {property:value;}
㈡:first-line 伪元素
⑴"first-line" 伪元素用于向文本的首行设置特殊样式。
⑵"first-line" 伪元素只能用于块级元素。
⑶下面的属性可应用于 "first-line" 伪元素:
- font properties
- color properties
- background properties
- word-spacing
- letter-spacing
- text-decoration
- vertical-align
- text-transform
- line-height
- clear
⑷示例:浏览器会根据 "first-line" 伪元素中的样式对 p 元素的第一行文本进行格式化
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>:first-line</title> <style> p:first-line { color:deeppink; font-variant:small-caps; } </style> </head> <body> <p>你可以使用 "first-line" 伪元素向文本的首行设置特殊样式。</p> </body> </html>
效果图:
㈢:first-letter 伪元素
⑴"first-letter" 伪元素用于向文本的首字母设置特殊样式
⑵"first-letter" 伪元素只能用于块级元素。
⑶下面的属性可应用于 "first-letter" 伪元素:
- font properties
- color properties
- background properties
- margin properties
- padding properties
- border properties
- text-decoration
- vertical-align (only if "float" is "none")
- text-transform
- line-height
- float
- clear
⑷示例:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>首字母特殊样式</title> <style> p:first-letter { color:#ff0000; font-size:xx-large; } </style> </head> <body> <p>用美好的心情去面对接下来会发生的每一件事。</p> </body> </html>
效果图:
㈣伪元素和CSS类
伪元素可以结合CSS类
示例:使所有 class 为 article 的段落的首字母变为红色。
p.article:first-letter {color:#ff0000;} <p class="article">文章段落</p>
㈤多个伪元素
示例:段落的第一个字母将显示为红色,其字体大小为 xx-large。
第一行中的其余文本将为蓝色,并以小型大写字母显示。
段落中的其余文本将以默认字体大小和颜色来显示:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>结合示例</title> <style> p:first-letter { color:deeppink; font-size:xx-large; } p:first-line { color:blue; font-variant:small-caps; } </style> </head> <body> <p>洗尽铅华始见金,褪去浮华归本真</p> </body> </html>
效果图:
㈥CSS - :before 伪元素
":before" 伪元素可以在元素的内容前面插入新内容。
下面的例子在每个 <h1>元素前面插入一幅图片:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>:before</title> <style> h1:before {content:url(smiley.gif);} </style> </head> <body> <h1>This is a heading</h1> <p>The :before pseudo-element inserts content before an element.</p> <h1>This is a heading</h1> <p><b>注意:</b>仅当 !DOCTYPE 已经声明 IE8 支持这个内容属性</p> </body> </html>
效果图:
㈦CSS - :after 伪元素
":after" 伪元素可以在元素的内容之后插入新内容。
下面的例子在每个 <h1> 元素后面插入一幅图片:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>:after</title> <style> h1:after {content:url(smiley.gif);} </style> </head> <body> <h1>This is a heading</h1> <p>The :after pseudo-element inserts content after an element.</p> <h1>This is a heading</h1> <p><b>注意:</b>仅当!DOCTYPE 已经声明 IE8支持这个内容属性.</p> </body> </html>
效果图:
㈧所有CSS伪类/元素