首页 > 其他分享 >CSS中的伪类

CSS中的伪类

时间:2022-12-05 16:44:23浏览次数:38  
标签:last 伪类 color 元素 样式 child CSS

1、什么是伪类?

首先伪类是选择器的一种,它用于选择处于特定状态的元素。

2、伪类的表现状态时什么样子的?

伪类就是开头为冒号的关键字。

例如::last-child

3、常见的伪类有哪些?

:last-child——它用于选择一组兄弟元素中的最后一个元素。

:first-child——它用于选择在一个页面中的第一个子元素,然后在这个子元素上面进行装饰,这使得我们将不再需要编辑 HTML

:only-child——它用于匹配没有任何兄弟元素的元素。

:invalid——表示任意内容未通过验证的<input>或其他<form> 元素 

然后也有一些别的伪类,这些伪类只有当用户以某种方式和文档交互的时候应用。它被称为用户行为伪类或者动态伪类。

这些伪类包括:

:hover——只会在用户将鼠标挪到上面的时候激活。

:focus——在会在用户使用键盘控制,选定元素的时候激活。

4、能给出上面说到的元素的案例方便理解吗?

——:last-child 如下:

<!DOCTYPE html>
<html>
    <head>
        <title>test1</title>
        <style type="text/css">
            .uu{
                font-size: large;
                font-style: italic;
                color: greenyellow;
            }

            .mm:last-child{
                color: blue;
                font-size: larger;
            }

            .kk{
                color: greenyellow;
            }
        </style>
    </head>
    <body>
        <p class="uu">curriculum</p>
        <ul>
            <li class="mm">math</li>
            <li class="uu">chinese</li>
            <li class="mm">english</li>
        </ul>
    </body>
</html>

输出

 

这个案例比较典型,就是我们的last-child他会自动寻找到相同类选择器名(其他id或元素选择器一样参考),然后找到最后面的那个选择器,然后在上面应用样式。当然,如果我们将上面第一个<li>标签的class值赋为kk,结果还是最后一个元素会应用mm样式,(排行第一个实际上也是最后一个)

——:first-child 案例如下:

<!DOCTYPE html>
<html>
    <head>
        <title>test1</title>
        <style type="text/css">
            article p:first-child{
                font-size: large;
                color: aqua;
            }
            p{
                color: red;
            }
            article p:last-child{
                color: blueviolet;
            }
        </style>
    </head>
    <body>
        <article>
            <p>the day is sunny</p>
            <p>tom and henry run to school because they were sleep late last night.although the weather is so 
                great.they did not have time to enjoying.
            </p>
        </article>
        <p>
            although they try themselve to run faster.they still late,and penalty station for it.
        </p>
    </body>
</html>

输出样式:

 

 上面的例子中,使用了first-chid和last-child。

从案例输出的结果,我们会发现一个有意思的现象,就是我们那个first-child,last-child样式全写在article的<p>元素内,然后样式也就只用在这里面。

这可以用于我们每次将文章第一段加粗或其他样式情况下。

——:only-child 案例如下:

<!DOCTYPE html>
<html>
    <head>
        <title>test1</title>
        <style type="text/css">
            .hh :only-child {
                color: red;
            }
        </style>
    </head>
    <body>
            <main>
                <div class="hh">
                  <i>I am a lonely only child.</i>
                </div>
              
                <div class="hh">
                  <i>I have siblings.</i></br>
                  <b>So do I!</b></br>
                  <span>I also have siblings, <span>but this is an only child.</span></span>
                </div>
            </main>
</html>

显示样式:

 

 上面的例子中,就把无兄弟的样式表示出来了。

——:invalid 案例如下

<!DOCTYPE html>
<html>
    <head>
        <title>test1</title>
        <style type="text/css">
input:invalid {
  background-color: #ffdddd;
}

form:invalid {
  border: 5px solid #ffdddd;
}

input:valid {
  background-color: #ddffdd;
}

form:valid {
  border: 5px solid #ddffdd;
}

input:required {
  border-color: #800000;
  border-width: 3px;
}

input:required:invalid {
  border-color: #C00000;
}

        </style>
    </head>
    <body>
        <form>
            <label for="url_input">Enter a URL:</label>
            <input type="url" id="url_input" />
            <br />
            <br />
            <label for="email_input">Enter an email address:</label>
            <input type="email" id="email_input" required/>
        </form>
    </body>
</html>

 

 

 ——:focus的案例:

<!DOCTYPE html> <html>     <head>         <title>test1</title>         <style type="text/css">             .red-input:focus {                 background-color: yellowgreen;                 color: red;             }
            .blue-input:focus{                 background-color: pink;                 color: blue;             }         </style>     </head>     <body>         <form>             <input class="red-input" value="I'll be red when focused."><br>             <input class="blue-input" value="I'll be blue when focused"         </form>     </body> </html>

 

——:hover案例:

为了确保生效,:hover 规则需要放在 :link 和 :visited 规则之后,但是在:active 规则之前,按照 LVHA 的顺序声明 :link-:visited-:hover-:active。

<!DOCTYPE html>
<html>
    <head>
        <title>test1</title>
        <style type="text/css">
           div.menu-bar ul ul {
            display:none;
        }
        div.menu-bar li:hover>ul{
            display: block;
        }
        </style>
    </head>
    <body>
        <div class="menu-bar">
            <ul>
              <li>
                <a href="#">Menu</a>
                <ul>
                  <li>
                    <a href="#">Link</a>
                  </li>
                  <li>
                    <a class="menu-nav" href="#">Submenu</a>
                    <ul>
                      <li>
                        <a class="menu-nav" href="#">Submenu</a>
                        <ul>
                          <li><a href="#">Link</a></li>
                          <li><a href="#">Link</a></li>
                          <li><a href="#">Link</a></li>
                          <li><a href="#">Link</a></li>
                        </ul>
                      </li>
                      <li><a href="#">Link</a></li>
                    </ul>
                  </li>
                </ul>
              </li>
            </ul>
          </div>          
    </body>
</html>

输出样式:

 

标签:last,伪类,color,元素,样式,child,CSS
From: https://www.cnblogs.com/TomHard/p/16952725.html

相关文章

  • css实现聊天对话框效果
    效果:可以看做是一个长方形和一个三角形组成的,关键css代码:#talk{margin-left:50px;width:220px;height:60px;background:#9EEA6A;position:relative;......
  • css超出部分省略
    1.单行:.div1{width:100px;overflow:hidden;//内容会被修减,并且其余内容是不可见text-overflow:ellipsis;//显示省略号来代替被修减文本white-space:nowrap......
  • 伪类选择器,选择元素
    nth-child(n)用法:1、nth-child(3)表示选择列表中的第3个标签,代码如下:li:nth-child(3){background:#fff}2、nth-child(2n)表示选择列表中的偶数标签,即选择第2、第4、第6......
  • css3动画效果一览
     <divhs-animate-in-class="animate__animated${下面的动画库}"></div>         ......
  • 前端基础-02-CSS
    CSS介绍CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素。当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染)。CSS语法CSS实例每个CSS......
  • React后台管理系统 03全局样式scss
    安装scss样式依赖,使用命令npmi--save-devsass --dev会将依赖安装在devDependencies=>开发环境的依赖。我们在src目录下的assets下创建styles文件夹,然后创建文件gl......
  • React后台管理系统 02样式初始化,引入reset-css
    上一篇中,我们已经对项目的整体结构进行了搭建,现在需要对不需要的东西进行删除,最后留下这些东西。现在需要对全部的样式进行清除,使用命令导入依赖:npmireset-css然后在m......
  • css实现渐变色圆环
    效果:<divclass="circle"></div>.circle{width:206px;height:206px;border-radius:50%;background:linear-gradient(0deg,#36A5ED0%,#6EEE96100%)......
  • CSS-盒子模型-内容,边框,内边距,外边距,(合并,塌陷情况)
    CSS-盒子模型-内容,边框,内边距,外边距,(合并,塌陷情况)目标:能够认识盒子模型的组成,****能够掌握盒子模型边框、内边距、外边距的****设置方法学习路径:1.盒子模型的介绍......
  • css: @keyframes
    https://developer.mozilla.org/zh-CN/docs/Web/CSS/@keyframeshttps://www.w3school.com.cn/cssref/pr_keyframes.asp<!doctypehtml><html><head><metachars......