CSS动态伪类

Posted 厦门德仔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CSS动态伪类相关的知识,希望对你有一定的参考价值。

动态伪类

定义在连接上面的伪类

  • link:用来定义连接未被访问的样式
  • visited:用来定义连接已经被访问过的样式(默认状态下是跟踪了用户的行为)

定义用户行为的伪类(显示顺序hover-focus-active)

  • hover:用来定义用户用鼠标划过对应的元素,可是未激活显示的样式

  • focus:用来定义一个元素自己具有焦点(接受键盘、鼠标、form的输入等)以后,显示的样式

  • active:用来定义用户按下鼠标后,可是并未离开时候的样式,一般是左侧的鼠标

  • :link

        <style>
            a:linkbackground-color: red
            div:linkbackground-color: green
            </style>
            <body>
                <p><a>无href</a></p>
                <p><a href="">a href</a></p>
                <p><div href="">div href</div></p>
            </body>

:link 只能用于 a 标签,并且标签带有 href 属性时,才会匹配到。

  • :visited
<style>
a:linkbackground-color: red
a:visitedbackground-color: green
</style>
<body>
    <a href="#1">1-1</a>
    <a href="#2">1-2</a>
    <a href="#2">1-3</a>
</body>

当点击 1-2 中的链接后,1-2会应用到 :visited 状态。同时由于 1-3 与 1-2 访问的链接一样,1-3 也会变成绿色。

  • :active
<style>
a:linkbackground-color: red
a:activebackground-color: green
button:activebackground-color: yellow
</style>
<body>
    <a href="#1">1-1</a>
    <button>按钮1</button>
</body>

表示元素被鼠标按下,但未松开前的状态。适用于所有元素,该状态在移动端浏览器下无效。

  • :hover
<style>
a:hoverbackground-color: yellow
button:hoverbackground-color: yellow
span:hoverbackground-color: yellow
div:hoverbackground-color: yellow
</style>
<body>
    <a href="#1">1-1</a>
    <button>按钮1</button>
    <span>1-3</span>
    <div>1-4</div>
</body>

表示元素在鼠标进入时匹配该样式,移出元素后会被取消。适用于所有元素,该状态在移动端浏览器下无效。

  • :focus
<style>
a:focusbackground-color: yellow
button:focusbackground-color: yellow
span:focusbackground-color: yellow
div:focusbackground-color: yellow
input:focusbackground-color: yellow
</style>
<body>
    <a href="#1">1-1</a>
    <button>按钮1</button>
    <span>1-3</span>
    <div>1-4</div>
    <input value="1-5">
</body>

a、 button 标签在 PC 端被点击后可以应用到 focus 状态,在移动端则不能。div、span 则无论如何都无法应用到 focus 状态。表单元素在两个端都能正常应用到 focus 状态。

以上是关于CSS动态伪类的主要内容,如果未能解决你的问题,请参考以下文章

CSS动态伪类

CSS动态伪类

CSS 边框和 :hover 动态伪类

第十三章 CSS选择器(下)

CSS选择器:伪类(图文详解)

css中伪类/伪元素详解