通过::selection伪元素可自定义文本选中样式,支持color、background-color等属性,提升页面个性化与品牌一致。

在网页中,当用户选中文本时,默认的文字高亮颜色通常是浏览器设定的蓝色。通过 CSS 的 ::selection 伪元素,你可以自定义选中文字的背景色、文字颜色等样式,让页面更具个性化和品牌一致性。
基本语法
::selection 用于设置用户选中文本时的高亮样式。它支持部分 CSS 属性,主要是颜色相关属性:
- color:选中文字的前景色(字体颜色)
- background-color:选中文字的背景色
- text-shadow:文字阴影
- cursor:光标样式(较少使用)
示例:
::selection {background-color: #ff6b6b;
color: white;
}
兼容性与写法建议
虽然现代浏览器普遍支持 ::selection,但为了更好的兼容性(尤其是老版本 WebKit 浏览器),推荐同时使用带前缀的写法:
立即学习“前端免费学习笔记(深入)”;
酷纬企业网站管理系统Kuwebs是酷纬信息开发的为企业网站提供解决方案而开发的营销型网站系统。在线留言模块、常见问题模块、友情链接模块。前台采用DIV+CSS,遵循SEO标准。 1.支持中文、英文两种版本,后台可以在不同的环境下编辑中英文。 3.程序和界面分离,提供通用的PHP标准语法字段供前台调用,可以为不同的页面设置不同的风格。 5.支持google地图生成、自定义标题、自定义关键词、自定义描
background-color: #ff6b6b;
color: white;
}
::selection {
background-color: #ff6b6b;
color: white;
}
-moz- 前缀用于旧版 Firefox,其他现代浏览器使用标准的 ::selection。
针对特定元素定制
你也可以只为某些元素设置特殊的选中样式。比如让标题选中时显示黄色背景,而正文为红色:
h1::selection {background-color: yellow;
color: black;
}
p::selection {
background-color: #d9534f;
color: #fff;
}
注意事项
以下几点需要注意:
- ::selection 只能定义有限的样式,不能设置字体、边距等布局属性
- 透明背景(如 transparent 或 rgba(0,0,0,0))可能导致不可见或回退到默认样式
- 移动端 Safari 和部分浏览器对样式的支持略有差异,建议实际测试
- 避免使用过于刺眼的颜色组合,影响可读性和用户体验









