博客列表 >盒模型和多种选择器的练习-2019/7/4

盒模型和多种选择器的练习-2019/7/4

降落伞的博客
降落伞的博客原创
2019年07月05日 14:22:00633浏览

1、写一个盒子,简写margin,padding,border,注意子元素的默认盒样式,子元素的盒子只会继承父级的宽度。

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        #div1 {
            width: 400px;
            height: 400px;
            background-color: mediumspringgreen;
            padding: 10px 20px 10px 20px; /*上 右 下 左*/
            border:5px solid yellowgreen;/*宽度 样式 颜色*/
            margin: 5px 10px 5px 10ox;/*上 右 下 左*/
        }
      #div2{
          /*子元素默认只继承宽度,所以可以再设置高度,当然,如果不要继承的宽度也可以再设置*/
          height: 200px;
          /*margin是指两个同级盒子之间的间隙,所以对这种 父子关系不生效*/
          background-color: wheat;
      }
    </style>
</head>
<body>
    <div id="div1">
        这是一个盒子,在外面
        <div id="div2">
            这个盒子在里面
        </div>
    </div>
</body>
</html>

运行实例 »

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

2、多种选择器的练习

  • 层级选择器用 空格 或者 > 代表下一级。

  • 属性选择器既可以指定某个属性值的标签,也可以指定带有某个属性的标签。

  • 群组选择器用逗号隔开多个即可。

  • 相邻选择器指右边的第一个,用+连接 接下来的标签名称。

  • 兄弟选择器用~连接*,针对所有接下来的同级标签。

  • 伪类子元素选择器,格式是 父级标签名称 空格 冒号 顺序第几个。意思是子级中的第几个,不care标签类型。

  • 伪类类型选择器,格式是 父级标签名称 空格 子级标签名称  类型第几个。意思是子级中,该标签类型的第几个。

  • 伪类类型选择器,格式是 标签名称 冒号 类型第X个。在至少含有X个这种标签的范围才会生效,针对第X个生效。

  • 伪类类型选择器,格式是 标签名称 冒号 only-of-type。意思是只含有这个标签类型的范围才会生效,就是这个标签才生效。

实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>更多的选择器</title>
    <style>
     span{
         display: inline-block;
     }
     /*层级选择器,空格代表下一级,也可以用>代替*/
        ul li{
            list-style:none;/*去掉默认的点*/
            width: 50px;
            height: 50px;
            background-color:lightyellow;
            text-align: center;/*字体水平居中*/
            line-height: 50px;/*和高度一样,就使内容垂直居中*/
            border-radius: 50%; /*只要大于等于50%,就是圆,或者像素为盒模型总宽度/总高度的一半以上*/
            display: inline-block;/*让块元素能并排展示,让内联元素能设置宽高*/
            margin-left: 10px;
        }
     /*属性选择器,可以针对某个属性值的标签,或者有这个属性的标签*/
     li[class]{
         background-color: yellowgreen;/*针对有class属性的标签,也就是前3个*/
     }
     li[id="li1"]{
         background-color: green;/*针对id=li1的标签,优先级比上面没有设置属性值的更高*/
     }
     /*群组选择器,就是用逗号展示多个,这个优先级比属性选择器的优先级更高*/
     #li3,#li4{
         background-color: darkkhaki;
     }
     /*相邻选择器,向右边的第一个,li是相邻的标签名称,也可用*表示*/
    #li4 + li{
        background-color: cornflowerblue;/*第4个的相邻是指第5个球*/
    }
    /*兄弟选择器*/
    #li5~*{
        background-color: blueviolet;!*针对第5个小球后面所有的同级标签,而span标签也是同级*!
    }
    /*伪类:子元素选择器。父级标签名称 空格 冒号 第几个*/
    ul :first-child{
        background-color: burlywood;/*ul的第一个子元素*/
    }
    ul :last-child{
        background-color: blue;/*不会生效,这个优先级更低*/
    }
    ul :nth-child(6){
        background-color: brown;/*针对第6个子元素,从头开始数的;但是这个不会生效,优先级更低*/
    }
    ul :nth-last-child(3){
        background-color: black;/*针对倒数第3个子元素,从末尾开始数;但是这个不会生效,优先级更低*/
    }
     ul :nth-child(8) {
         background-color:darkorange;/*针对ul的第8个子元素,也就是span标签*/
     }
     div :nth-child(2) {
         background-color: royalblue;/*针对div的第2个子元素,也就是葡萄和李子*/
     }
    /*伪类:类型选择器*/
     ul li:first-of-type {
         background-color:darkgray;  /* 针对第1个li类型的元素;会生效 */
     }
     ul li:last-of-type {
         background-color:rosybrown;  /* 针对最后1个li类型的元素;不会生效 */
     }
     ul li:nth-of-type(8) {
         background-color:violet;  /* 针对第8个li类型的元素,即使前面有个span元素,也不影响,注释掉兄弟选择器才看到此效果 */
     }
     /*冒号前面紧跟P标签,意思是针对P标签这种类型,在一定范围内,第2个P标签才会生效,那么前提是这个范围必须包含2个P标签以上。
        所以只含有1个P标签的范围内不会生效,
     也就是 西瓜*/
     p:nth-of-type(2) {
         background-color:aqua;
     }
     /*只含有1个P标签的范围才会生效,第一个DIV有2个P标签,所以不会生效,也就是苹果*/
     p:only-of-type {
         background-color: pink;
     }

    </style>


</head>
<body>
<ul>
    <li id="li1" class="li">1</li>
    <li id="li2" class="li">2</li>
    <li id="li3" class="li">3</li>
    <li id="li4">4</li>
    <li id="li5">5</li>
    <li id="li6">6</li>
    <li id="li7">7</li>
    <span>span</span>
    <li id="li8">8</li>
    <li id="li9">9</li>
    <li id="li10">10</li>
</ul>
<div>
    <p>这是P标签 芒果</p>
    <li>这是li标签1 葡萄</li>
    <p>这是P标签 西瓜</p>
</div>

<div>
    <p>这是P标签 苹果</p>
    <li>这是li标签2 李子</li>
</div>
</body>
</html>

运行实例 »

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

3、表单在无效、有效、获取焦点、鼠标经过时,都可以设置样式。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议