浏览器/用户代理默认样式、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,但是我们很少直接使用他们,了解一下就好了。

相关推荐
山雀~15 分钟前
CSP 安全漏洞修复
前端·网络协议
陌离1 小时前
Go-Gui:一套 无限接近 现代化UI的 GPU绘制界面组件框架
前端
咚咚咚小柒1 小时前
【前端】LangChain.js学习
前端·javascript·人工智能·typescript·langchain·vue·ai编程
2401_885885041 小时前
巴林语音通知接口如何对接?系统告警语音API接入教程
android·前端·网络·python·语音识别
java1234_小锋1 小时前
【技术专题】CSS3 网页技术 - CSS3 盒模型
前端·css·css3
计算机魔术师1 小时前
手握芯片、又要吞下开源分发入口,英伟达被盯上了
前端
段一凡-华北理工大学2 小时前
高炉能源系统智能化:热风炉、煤气与极致能效~系列文章07:高炉煤气:产生规律与全厂用户平衡
java·前端·能源
前端架构师-老李3 小时前
HTML与CSS基础第四课—strong、em、b、i 各表示什么
前端·css·html
king王一帅3 小时前
AI 时代一群人在卷笔记软件,我想先把 Markdown 编辑器的底层做好
前端·ai编程·markdown
用户11481867894843 小时前
盲水印:DCT-QIM 从原理到踩坑
前端