【前端】【html/css】前端学习之路(四):CSS复合选择器

CSS复合选择器

1.交集选择器

    交集选择器由两个选择器构成,其中第一个为标签选择器,第二个为class选择器,两个选择器之间不能有空格,如h3.special。

    交集选择器 是 并且的意思。 即...又...的意思。

    用的相对来说比较少,不太建议使用。

示例:

    <style>
        p.test{
            font-size: 30px;
            color: #ff0000;
        }
    </style>
    <div>
        <p class="test">我是交集选择器的测试</p>
        <div class="test">
            我也是测试之一噢<p></p>
        </div>
    </div>

2.并集选择器

    任何形式的选择器(包括标签选择器、class类选择器id选择器等),都可以作为并集选择器的一部分。如果某些选择器定义的样式完全相同,或部分相同,就可以利用并集选择器为它们定义相同的CSS样式。

    示例:

    <style>
        p, #test, .test {
            font-size: 30px;
            color: #ff0000;
        }
    </style>
<div>
    <p class="test">我是交集选择器的测试</p>
    <div id="test">
        我也是测试之一噢
        <p>
            我是第三个测试
        </p>
    </div>
</div>

3.后代选择器

    后代选择器又称为包含选择器,用来选择元素或元素组的后代,其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。

    示例:

    <style>
        div p {
            font-size: 30px;
            color: #ff0000;
        }
    </style>
<div>
    <p class="test">我是交集选择器的测试</p>
    <div id="test">
        我也是测试之一噢
        <p>
            我是第三个测试
        </p>
    </div>
</div>

    虽然两个p分属不同的div,但从结构可以看出两个p都是div的后代,所以一旦使用后代选择器,则两个p都会被选中,样式也会被改变。

4.子元素选择器

    子元素选择器只能选择作为某元素子元素的元素。其写法就是把父级标签写在前面,子级标签写在后面,中间跟一个 > 进行连接,注意,符号左右两侧各保留一个空格。

    示例:

    <style>
        #test2 > p {
            font-size: 30px;
            color: #ff0000;
        }
    </style>
<div id="test2">
    <p class="test">我是交集选择器的测试</p>
    <div id="test">
        我也是测试之一噢
        <p>
            我是第三个测试
        </p>
    </div>
</div>

    这就可以看出,子代选择器和后代选择器最大的不同是,子代选择器只选择子代,而后代选择器则会选择所有的后代,不论是儿子、孙子还是重孙子。

小测试:

  1. 链接 登录 的颜色为红色,同时主导航栏里面的所有的链接改为橙色 (简单)

  2. 主导航栏和侧导航栏里面文字都是14像素并且是微软雅黑。(中等)

  3. 主导航栏里面的一级菜单链接文字颜色为绿色。(难)

    <style>
        .site-r a {
            color: green;
        }
        .nav a {
            font-size: 14px;
            font-family: "微软雅黑";
        }
        .nav > ul > li > a {
            color: purple;
        }
        *{
            text-decoration: none;
        }
    </style>
<div class="nav">    <!-- 主导航栏 -->
    <ul>
        <li><a href="#">公司首页</a></li>
        <li><a href="#">公司简介</a></li>
        <li><a href="#">公司产品</a></li>
        <li>
            <a href="#">联系我们</a>
            <ul>
                <li><a href="#">公司邮箱</a></li>
                <li><a href="#">公司电话</a></li>
            </ul>
        </li>
    </ul>
</div>
<div class="sitenav">    <!-- 侧导航栏 -->
    <div class="site-l">左侧侧导航栏</div>
    <div class="site-r"><a href="#">登录</a></div>
</div>

5.伪类选择器

    伪类选择器用于向某些选择器添加特殊的效果。比如给链接添加特殊效果, 比如可以选择 第1个,第n个元素。

    

为了和我们刚才学的类选择器相区别,  类选择器是一个点 比如 .demo {}   而我们的伪类 用 2个点 就是 冒号  比如  :link{}

 链接伪类选择器

  • :link /* 未访问的链接,在点击过后就会变为visited的颜色或样式 */

  • :visited /* 已访问的链接 */

  • :hover /* 鼠标移动到链接上 */

  • :active /* 选定的链接 */

注意写的时候,他们的顺序尽量不要颠倒,按照 lvha 的顺序。

示例:

    <style>

        a{
            font-size: 25px;
            font-family: "微软雅黑";
            font-weight: bold;
        }
        a:link{
            color: red;
        }
        a:visited{
            color: pink;
        }
        a:hover{
            color: skyblue;
        }
        a:active{
            color: green;
        }

    </style>
<a href="http://www.bilibili.com">测试</a>



  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值