浏览器/用户代理默认样式、any-link 伪类选择器

在开发者工具中,选中一个元素,在 styles 标签往下滑动,发现如图所示的样式 "user agent stylesheet" 代表着浏览器默认的样式,每个浏览器的默认样式是不同的,所以我们在开发之前一般会

一、a 标签的默认样式

今天我突然发现,我的一个页面上的 a 标签点击的变成了红色,然后我搜了项目中没有任何地方设置了 a 标签的颜色。然后我去了 mdn 看 mdn 页面的 a 标签,都没有这么扎眼的颜色,一看原来是有设置的颜色。看来官网文;档也没用默认的样式。

去掉默认的样式,我们发现 a:active 是变成了红色,但是我发现了一个重来没有注意到的伪类 any-link

:any-link CSS 伪类选择器表示作为超链接源锚点的元素,无论是否已被访问。换言之,它匹配每个具有 href 属性的 <a><area> 元素。因此,它匹配所有匹配 :link:visited 的元素。

any-link 只能匹配所有有 href 的 a 元素。所以其实在实际开发中,我们也可以使用 a:any-link 或者 a:-webkit-any-link 统一设置有 href 的链接的样式。

2.1 没有 href 的 a 标签【html4功能】

同一个页面的锚点功能,可以使用 a 标签 + name 属性来进行页面内部定位。

html 复制代码
<a name="top"></a>
<h1>页面顶部</h1>

<a href="#top">回到顶部</a>

说实话,我好久没用这个功能了,最近的项目都是使用 scrollTo / scrollTop / scrollIntoView 等 js 方法来实现,居然忘了这个原始的功能,

不过 h5 已经不用name了,直接该用 id 而且不需要额外的 a 标签,任何标签都可以。

html 复制代码
<div id="top"></div>
<h1>页面顶部</h1>

<a href="#top">回到顶部</a>

三、css 内置的系统关键字

上面的例子中 user-agent-stylesheet 的color 的值 -webkit-link 就是浏览器内置的 css 的系统关键字。类似的还有 -webkit-visited,但是我们很少直接使用他们,了解一下就好了。

相关推荐
扯蛋438几秒前
LangChain的学习之路( 一 )
前端·langchain·mcp
Mr.Jessy9 分钟前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
ConardLi1 小时前
Easy Dataset 已经突破 11.5K Star,这次又带来多项功能更新!
前端·javascript·后端
冴羽2 小时前
10 个被严重低估的 JS 特性,直接少写 500 行代码
前端·javascript·性能优化
rising start2 小时前
四、CSS选择器(续)和三大特性
前端·css
一 乐2 小时前
高校后勤报修系统|物业管理|基于SprinBoot+vue的高校后勤报修系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·毕设
爱喝水的小周2 小时前
《UniApp 页面配置文件pages.json》
前端·uni-app·json
mapbar_front2 小时前
React中useContext的基本使用和原理解析
前端·react.js
贪婪的君子2 小时前
【每日一面】实现一个深拷贝函数
前端·js
_安晓3 小时前
Rust 中精确大小迭代器(ExactSizeIterator)的深度解析与实践
java·前端·python