使用::selection改变文字被选中后的颜色
在CSS中,::selection
伪元素用于定义用户选中(如使用鼠标拖动选择)文本时的样式。你可以使用它来改变文字被选中后的背景色、文字颜色等。然而,需要注意的是,::selection
伪元素主要支持改变背景色(background-color
)和颜色(color
),并且这些改变仅适用于用户实际选中的文本区域。
以下是一个简单的例子,展示了如何使用 ::selection
来改变文字被选中后的颜色:
/* 改变选中文字的背景色和文字颜色 */
::selection {
background-color: #ff9600; /* 橙色背景 */
color: #ffffff; /* 白色文字 */
}
/* 对于某些浏览器(如Firefox),你可能还需要添加以下规则 */
::-moz-selection {
background-color: #ff9600; /* 橙色背景 */
color: #ffffff; /* 白色文字 */
}
在这个例子中,当用户选中页面上的文本时,被选中的文本区域将会有一个橙色的背景色和白色的文字颜色。
需要注意的是,::selection
和 ::-moz-selection
(Firefox 特有的伪元素)的样式改变仅适用于用户实际选中的文本区域,并且这些改变是临时的,一旦用户取消选择,文本将恢复到其原始样式。
此外,虽然 ::selection
伪元素允许你改变选中文本的颜色,但并非所有浏览器都支持改变文字颜色(尤其是早期的浏览器版本)。然而,现代浏览器(如Chrome、Firefox、Safari、Edge等)都支持这一功能。因此,在大多数情况下,你可以放心地使用 ::selection
来改变选中文本的颜色和背景色。