在css中::selection选中文本样式设置

::selection 伪元素可自定义用户选中文本的样式,如背景色、文字颜色和阴影效果。基本语法为 ::selection { background-color: #ff6347; color: white; },可提升页面美观与体验。为兼容旧版浏览器,建议添加私有前缀:::-moz-selection { background: #00bcd4; color: #fff; }。支持的属性包括 color、background-color、text-shadow 和 background(含渐变),但不支持边距、边框、字体大小等布局属性。实际应用中可设置柔和渐变背景增强设计感,如 ::selection { background: linear-gradient(90deg, #a8e6cf, #dcedc1); color: #212121; text-shadow: 1px 1px 2px rgba(0,0,0,0.1); }。合理使用能提升细节精致度,但应避免过度设计影响可读性。

在CSS中,::selection 伪元素用于设置用户选中文本时的高亮样式。你可以通过它自定义选中文字的颜色、背景色以及其他视觉效果,提升页面的美观性和用户体验。

基本语法

使用 ::selection 非常简单,直接在CSS中定义即可:

::selection {
   background-color: #ff6347;
   color: white;
}

这段代码会让所有被用户选中的文本背景变成橙红色,文字颜色变为白色。

浏览器兼容性注意事项

为了确保在更多浏览器中生效,建议加上私有前缀:

::selection {
   background: #00bcd4;
   color: #fff;
}

::-moz-selection {
   background: #00bcd4;
   color: #fff;
}

早期Firefox使用 ::-moz-selection,现在新版已支持标准语法,但为兼容旧版本可保留。

可设置的属性

::selection 支持以下常用CSS属性:
  • color:选中文字的前景色
  • background-color:选中区域的背景色
  • text-shadow:文字阴影
  • background:背景相关属性(如渐变)
注意:不能设置边距、边框、字体大小等布局类属性。

实际应用示例

为文章内容设置柔和的选中效果:

::selection {
   background: linear-gradient(90deg, #a8e6cf, #dcedc1);
   color: #212121;
   text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
}

这样可以让选中文本看起来更柔和、有设计感。

基本上就这些。合理使用 ::selection 能让网页细节更精致,但别过度设计影响可读性。不复杂但容易忽略。