博主信息
博文 18
粉丝 0
评论 0
访问量 16932
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
选择器使用(标签、属性, 兄弟, 类型, 伪类) 2019年07月04日 23时 20分
高明博客
原创
566人浏览过

本次标签选择器、id选择器,类选择器、伪类选择器进行了深入学习,对css选择器有了更深一步认识,针对后期系统开发,相信会起到很好的协助作用。

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>选择器使用(标签、属性, 兄弟, 类型, 伪类)</title>
    <style>
        /**标签选择器**/
        ul {
            /*border: 1px solid coral;*/
            margin: 0 auto;
            padding-left: 0;
        }

        ul li{
            list-style: none;
            width: 60px;
            height: 40px;
            background-color: chocolate;

            /*设置文本水平垂直居中*/
            text-align: center;
            line-height: 40px;

            /*设置并排显示*/
            display: inline-block;

            padding-left: 10px;

            /*设置阴影参数:向右边、向下面、扩散、颜色*/
            box-shadow: 3px 2px 1px #888;
        }


        /*id选择器*/
        #green{
            /*background-color: green;*/
        }

        /*类选择器*/
        .bg-yellow{
            /*background-color: yellow;*/
        }

        /*属性选择器*/
        li[class="bg-yellow"]{
            /*background-color:yellowgreen;*/
            /*border: 1px solid red;*/
        }

        /*群组选择器,会选中苹果、桃子、梨子、西瓜、榴莲*/
        .red,#green,.bg-yellow{
            background-color: #FF0000;
            border: 2px dotted #ffb3ac;
        }

        /*相邻选择器*/
        /* 第5个元素西瓜相邻的是第6个元素西红柿**/
        #green + *{
            /*background-color: yellowgreen;*/
        }


        /*伪类:子元素选择器*/
        ul :first-child{
            /**background-color: yellowgreen;**/  /**选中第一个子元素:苹果**/
        }

        ul :last-child{
            /**background-color: yellow;**/ /**选中最后一个子元素:榴莲**/
        }

        /*指定选择第3个子元素:桃子,从1开始计数*/
        ul :nth-child(3){
            /*background-color: yellow;*/
        }

        /*倒数第2个,指定山竹子元素*/
        ul :nth-last-child(2){
            /*background-color: greenyellow;*/
        }


        /*伪类:类型选择器*/

        /**选择第一个li类型元素,苹果**/
        ul li:first-of-type{
            /*background-color: green;*/
            /*color: white;*/
        }

        /**选择最后一个li类型元素,榴莲**/
        ul li:last-of-type{
            /*background-color: #ffb3ac;*/
            /*color: #FF0000;*/
        }

        /**选择第6个li类型元素,西红柿**/
        ul li:nth-of-type(6){
            background-color: #ffb3ac;
        }

        /**选择倒数第4个li类型元素,西红柿**/
        ul li:nth-last-of-type(4){
            /*background-color: #ffb3ac;*/
        }


        /* 我们发现, 伪类中的子元素选择器与类型选择器的功能几乎是一样的,那我们应该用哪个呢? */
        /* 这二种伪类选择器关注点不同, 子元素选择器的重点是 "child" 关键字上,关注的是子元素位置 */

        /* 而类型选择器关注点在 "type" 关键字上,重点是元素的类型 */

        /*:nth-child(m): 关注位置*/
        /*:nth-of-type(n): 除了关注关注位置外, 还需要元素的类型匹配*/
        /*li:nth-child(m): 如果这样写, 那么与 li:nth-of-type(n)功能几乎一样*/



        /* 选中每个div中的第一个子元素背景设置为绿色, 玛利亚和CSSS变色 */
        div :nth-child(1){
            /*background-color: green;*/
        }

        /*如果只想选中"CSS",变成黄色该怎么办呢?*/
        /*分析:CSS是第二个div中第一个元素h2标签的内容,而且第二个div的第一个元素是h2*/
        h2:nth-child(1){
            background-color: yellow;
        }

        /* 如果我要选择只有一个子元素且子元素为h2,应该如何做?
         此时, 只有第二个div有一个h2元素,必须落选,所以只有第二个div中的h2被选中*/

        /*给第二个div的第一个元素 css变色*/
        h2:only-of-type{
            background-color: gray;
        }

        /*伪类:表单控件*/


        /**选择可用控件,背景颜色设置绿色**/
        form :enabled{
            /*background-color: green;*/
        }

        /**选择禁用控件,背景颜色设置灰色**/
        form :disabled{
            /*background-color: gray;*/
        }

        /* 当在控件中输入无效值文本自动变成红色 */
        /*例如邮箱文本框,如果输入的不是一个有效的邮箱格式字符串, 就会实时的用颜色提示用户的*/
        form :invalid {
            color: red;
        }

        /* 设置控件获取到焦点时的样式 */
        /*控件获取到焦点时, 背景变成浅绿色*/
        form :focus{
            background-color: lightgreen;
        }

        /* 设置鼠标悬停时的样式 */
        button:hover{
            width: 60px;
            height:30px;
            background-color: black;
            border: none;
            color: white;
        }

    </style>

</head>
<body>

<!--演示基本选择器-->
<ul>
    <li class="red">苹果</li>
    <li class="bg-yellow">梨子</li>
    <li class="bg-yellow">桃子</li>
    <li>桔子</li>
    <li id="green">西瓜</li>
    <li>西红柿</li>
    <li>黄瓜</li>
    <li>山竹</li>
    <li class="bg-yellow">榴莲</li>
</ul>

<!-- 演示伪类选择器中的子元素与类型选择器之间的区别与联系 -->
<div>
    <p>玛利亚</p>
    <p>卡丽</p>
    <p>张三丰</p>
</div>

<div>
    <h2>CSS</h2>
    <p>JavaScript</p>
    <p>PHP</p>
</div>


<!-- 演示表单选择器 -->
<form action="">
    <h1>登录后台</h1>
    <p>
        <label for="email">邮箱:</label>
        <input type="email" id="email">
    </p>

    <p>
        <label for="password">密码:</label>
        <input type="password" id="password" disabled>
    </p>

    <p>
        <input type="radio" id="week" name="save" value="7" checked><label for="week">保存一周</label>

    </p>
    <p>
        <input type="radio" id="month" name="save" value="30"><label for="month">保存一月</label>
    </p>
    <p>
        <button>登录</button>
    </p>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


本地运行截图:0704.png


总结,工作中,更多用到的是标签选择器、class选择器、后代选择器、群组选择器,这几种选择器配合使用,最终才能完美呈现想要网页布局的效果。

具体个人对这几种选择器的理解如下:
标签选择器:顾名思义,直接写标签名,统一定义网页中所有用到此标签的样式;
class选择器:又称类选择器,主要针对一批需要统一设置样式的代码行,使用的一种选择器,使用比较灵活,工作中更是经常用到;
id选择器:在网页中,词选择器具有唯一性,一单定义不能重复,样式使用优先级别比较高;
群众选择器:顾名思义,标签样式、类样式、id样式如果需设置统一属性,可以一起设置样式规则;


批改状态:合格

老师批语:这些原生的选择器,用好了非常的方便, 别嫌麻烦
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学