偽元素 ::before 或 ::after 的使用
偽屬性的區塊範圍如下範例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <style> p { border: 1px solid black; display: inline-block; width: 100px; color: blue; background: red; } p::before { content: 'before'; background: green; } p::after { content: 'after'; background: yellow; } </style> </head> <body> <div> <p>p1</p> <p>p2</p> <p>p3</p> </div> <div> <p>p1</p> <p>p2</p> <p>p3</p> </div> </body> </html>
偽元素的屬性可以部份相依於本體元素屬性,也可以替自己獨立指定屬性。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <style> p { position: relative; border: 1px solid red; display: inline-block; width: 100px; color: blue; } p::before { content: 'before'; color: green; } p::after { content: 'after'; position: absolute; left: 10px; } </style> </head> <body> <div> <p>p1</p> <p>p2</p> <p>p3</p> </div> <div> <p>p1</p> <p>p2</p> <p>p3</p> </div> </body> </html>
如範例,
p tag 偽元素 after 的顏色不個別指定時,則相依於本體元素的藍色,
而 p tag 偽元素 after 的 position 屬性可自己獨立指定不同於本體的屬性值。