浏览器的小白谎言
💡
原文英文,约400词,阅读约需2分钟。
📝
内容提要
作者希望通过CSS样式改变已访问链接的外观,但由于浏览器的安全和隐私限制,无法使用:has()选择器。最终,作者决定放弃CSS,转而使用JavaScript实现该功能。
🎯
关键要点
- 作者希望通过CSS样式改变已访问链接的外观。
- 尝试使用:has()选择器,但未能成功。
- 发现:visited伪类的样式应用受到限制,主要是出于安全和隐私原因。
- 使用兄弟选择器时,已访问链接的相邻元素样式会被视为未访问。
- 浏览器为了保护用户隐私,会在某些情况下对网页应用程序提供虚假的信息。
- 最终,作者决定放弃CSS,转而使用JavaScript实现该功能。
❓
延伸问答
为什么作者想通过CSS改变已访问链接的外观?
作者希望通过CSS样式改变已访问链接的外观,以提升用户体验。
:has()选择器为什么无法实现预期效果?
:has()选择器未能成功是因为浏览器对:visited伪类的样式应用有限制,出于安全和隐私原因。
浏览器如何保护用户隐私?
浏览器通过对网页应用程序提供虚假的信息来保护用户隐私,防止泄露用户的浏览历史。
作者最终选择了什么解决方案?
作者最终决定放弃CSS,转而使用JavaScript来实现已访问链接的样式改变。
使用兄弟选择器时会发生什么?
使用兄弟选择器时,已访问链接的相邻元素样式会被视为未访问,无法正确显示样式。
为什么:visited伪类的样式应用有限制?
:visited伪类的样式应用有限制是为了防止通过样式检测用户的浏览历史,从而保护用户隐私。
➡️