a标签和静态伪类中的a:link到底有什么区别?

    当我在接触到伪类的时候,静态伪类a:link引起了我的注意。
你a:link描述的是超链接在点击之前的样式,那和我直接在样式里给a标签添加样式有什么区别?怎么有一种a:link没什么卵用的感觉呢?
    实际上两者还是有去别的。
    首先还是先简单说一下常用的5个伪类。
    伪类分为静态伪类和动态伪类。
    静态伪类有两个,只能用于超链接。分别描述超链接在点击之前和点击之后。
        :link 超链接点击之前
        :visited 超链接点击之后
    动态伪类有三个,理论上他们可以用于任何标签。
        :hover '悬停'当鼠标放在当前标签上时
        :active '激活'点鼠标点击却没有抬起时
        :focus '焦点'当标签获得焦点时,一般是输入框被点击
    
    最为规范的写法是要写link、visited和hover三个伪类,但是在前端攻城狮们的大量实践中发现,不写link和visited其实也非常的兼容(实际上这两个也没什么卵用),但是毕竟这么写是不规范的,如果追求代码的极致建议进行书写。另外link和visited是绑定的,不能只写其中一个。
    
    好了言归正传,其实答案已经在上面说出来了。那就是静态伪类只能用于超链接。但是a标签所定义的不仅仅有超链接,其实还有锚点。锚点和超链接的区别是,锚点没有定义href属性。所以其实没有href属性的a标签根本就不是超链接。而a标签定义的样式控制的是所有的a标签,而通过静态伪类link来设置的样式只能作用于拥有href属性的超链接上,没有href属性的锚点a标签就不能生效啦。复制代码

转载于:https://juejin.im/post/5bb21da25188255c3f6bec0d

  • 1
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页