css标签(1)

css

css基础选择器

标签选择器:
 <style>
    li{
        color: #349c3b;
    }
 </style>
</head>
<body>
    <ul>
        <li>标签</li>
        <li>标签</li>
        <li>标签</li>
        <li>标签</li>
    </ul>
</body>
</html>
类选择器:
.类名 { css属性名:属性值; }
id选择
 <sty le>
    #p1{
        color: aqua;
    }
 </style>
</head>
<body>
    <p id="p1">
        1.每个标签都有id属性
        2.每一个标签只能对应提个标签
        3.一个id只能对应一个标签
        4.id选择器使用#代表
    </p>
</body>
通配符选择噐:* { css属性名:属性值; }
字体样式:

字体大小:font-size

字体粗细:font-weight

字体样式:font-style

字体类型:font-family

字体类型:font属性连写

文本样式:

文本缩进:text-indent

文本水平对齐方式:text-align

文本修饰:text-decoration

line-height行高
选择器进阶:

交集选择器:

<style>
    p.a{
        color:red;
    }
</style>
</head>
<body>
    <p class="a">
        交集选择器中的选择器之间是紧挨着的,没有东西分隔
        交集选择器中如果有标签选择器,标签选择器必须写在最前面
    </p>
   <p class="b">

    </p>
    <a href="#" class="a">对方过后</a>
</body>

并集选择器:

<title>并集选择器</title>
    <style>
        /* li1红   li2,li3 黄 */
        .li1 {
            color: red;
        }

        .li2,
        .li3 {
            color: yellow;
        }

        .p1,
        .li2>p {
            font-size: 40px;
        }

        ul p,
        ul span {
            color: rgb(84, 150, 183);
        }
    </style>
</head>

<body>
    <p class="p1">并集选择器</p>
    <ul>
        <li class="li1">
            并集选择器中的每组选择器之间通过 , 分隔
        </li>
        <li class="li2">
            <p class="p2">
                并集选择器中的每组选择器可以是基础选择器或者复合选择器
            </p>
            <span>sdfghj</span>
        </li>
        <li class="li3">
            并集选择器中的每组选择器通常一行写一个,提高代码的可读性
            <span>edrtyui</span>
        </li>
    </ul>
    <span>ertyui</span>
</body>

hover伪类选择器:

<title>hover伪类选择器</title>
<style>
    p:hover{
        color: aquamarine;
        font-size: large;
        font-weight: 400;
    }
</style>
</head>
<body>
    <p>鼠标移入变色</p>
   
</body>

元素选择模式:

<title>元素的选择模式</title>
<style>
    a{
        /* 变快\块 */
        display: block;
        height: 100px;
        width: 200px;
        background-color: gold;
    }
    p{
        /* 行内 */
        display: inline;
        background-color: aquamarine;
    }
    .img1{
        display: none;
    }
    .d1{
        height: 300px;
        background-color: chocolate;
    }
    .d1:hover .img3{
        display: none;
    }
</style>
</head>
<body>
    <a href="#">行内--块</a>
    <a href="#">行内--块</a>
    <p>块--行内</p>
    <img src="img/up.jpg" alt="" class="img1">
    <img src="img/up.jpg" alt="" class="img2">
    <div class="d1">
        <img src="img/up.jpg" class="img3">
    </div>
</body>

背景属性:

背景颜色:

 <title>背景颜色t</title>
    <style>
        ul {
            /* 颜色名 */
            background-color: rgb(119, 119, 203);
            /* 16进制 */
            background-color: #669977;
            /* rgb */
            background-color: rgb(255, 122, 0);
            /* rgba */
            background-color: rgba(0,255,0,0.1);
            /* hsl */
            background-color: hsl(0, 77%, 52%);
            /* hsla */
            background-color: hsla(0, 33%, 55%, 0.5);
        }
        li{
            background-color: #7d9cb4;
        }
    </style>
</head>

<body>
    <ul>
        <li>2345</li>
        <li>8789</li>
        <li>4567</li>
    </ul>
</body>

背景图片:

<title>背景图片</title>
<style>
    body{
        height: 800px;
        width: 1920px;
        /* 背景图片 */
        background-image: url(img/up.jpg);
        /* 背景平铺 */
        background-repeat: no-repeat;
        background-color: aqua;
       /* 背景尺寸    第一个是宽第二个是高*/
        background-size: 600px 800px;
        /* 背景定位 */
        background-position: 300px  100px;
        
    }
</style>

背景平铺:

background-repeat

背景位置:

background-position

元素选择模式:

块级元素:

显示特点:

独占一行(一行只能显示一个)宽度默认是父元素的宽度,高度默认由内容撑开可以设置宽高

代表标签:div、p、h系列、ul、li、dl、dt、dd、form、header、nav、footer……

行内元素:
  /* 行内 */
        display: inline;
        background-color: aquamarine;
行内块元素:

display:inline-block

css特性:

继承性:
  <title>继承</title>
    <style>
        .a {
            height: 300px;
            background-color: rgb(143, 205, 50);
            color: red;
        }
        div{
            width: 200px;
            color: white;
            color: blue;
        }
        #a{
            color: blueviolet;
        }
    </style>
</head>
<body>
    <div class="a">
        这是父亲
        <p>这是儿子</p>
    </div>
层叠性:

特性:

1.给同一个标签设置不同的样式 → 此时样式会层叠叠加 → 会共同作用在标签上

2.给同一个标签设置相同的样式 → 此时样式会层叠覆盖 → 最终写在最后的样式会生效

注意点:当样式冲突时,只有当选择器优先级相同时,才能通过层叠性判断结果

盒子模型:

边框:

<title>边框</title>
    <style>
        div {
            height: 300px;
            width: 500px;
        }

        .a1 {
            /* 边框的粗细 */
            border-width: 2px;
            /* 边框颜色 */
            border-color: aqua;
            /* 边框的样式 */
            border-style: solid;
        }

        .a2 {
            /* 边框的粗细 */
            border-width: 2px;
            /* 边框颜色 */
            border-color: rgb(212, 150, 14);
            /* 边框的样式 */
            border-style: solid;
            /* 上边框 */
            /* border-top-width: 10px;
            /* 左边框 */
            /* border-left-width: 20px;  */
            /* 上 top 下 bottom 左 left  右 right */
            /* 上右下左 */
            border-width: 5px 20px 10px 16px;
            /* 上右下左 */
            /* border-color: blueviolet yellow yellowgreen bisque; */
            /* 上,左右,下 */
            border-color: blueviolet beige yellow;
            /* 上下,左右 */
            border-color: beige yellow;
            /* 上下左右 */
            border-color: aqua;
             border-style: inset dashed solid groove;
        }
        .a3{
            /* 简写:宽度 样式 颜色 */
            border: 1px solid  red;
        }
    </style>
</head>

<body>
    <div class="a1"></div>
    <div class="a2"></div>
    <div class="a3"></div>
</body>

外边框:

<title>外边距</title>
    <style>
        .d1,
        .d2,
        .d3 {
            height: 200px;
            width: 200px;
            background-color: pink;
            margin: 10px;
        }

        .d2 {
            /*左边距210px(向右挪7动210px ) */
            margin-left: 220px;
            margin-top:-210px;
        }
    </style>
</head>

<body>
    <div class="d1"></div>
    <div class="d2"></div>
    <div class="d3"></div>
    <div class="d4">
        <a href="#">第三方规划局</a>
        <a href="#">玩儿听雨</a>
        <a href="#">电饭锅会尽快</a>
        <a href="#">发过火及哦发过火</a>
    </div>
</body>

内边框:

title>内边框</title>
    <style>
        .d1{
            height: 500px;
            width: 500px;
            border: 6px solid yellowgreen;
            /* 内边距,填充 */
            padding: 10px;
            padding-left: 50px;
        }
        img{
            height: 100%;
        
        }
    </style>
</head>
<body>
    <div class="d1">
        <img src="img/安浩然.jpg" alt="">
    </div>
</body>

css布局

结构为类选择器:

<title>结构为类选择器</title>
    <style>
        /* 父元素的第一个子元素 */
        ul li:first-child{
            background-color: aquamarine;
        }
        /* 最后一个 */
        li:last-child{
            background-color: rgb(255, 255, 0);
        }
        /* 第n个子元素 */
        ul li:nth-child(3){
            color: aqua;
        }
        /* 倒数n个 */
        ul li:nth-last-child(2){
            font-size: 30px;
        }
        table{  
            border: 1px solid black;
            height: 500px;
            width: 500px;
        }
        td{
            border: 1px solid black;
        }
        /* n 的用法 */
        /* 1.偶数行  2n even*/
        table tr:nth-child(2){
            background-color: aqua;
        }
        /* 2.奇数 2n+1 2n-1 odd */
        table tr:nth-child(2n+1){
            background-color: aquamarine;
        }   
        /* 前三个   n+3 */
        ul li:nth-child(-n+3){
            border: 1px solid palegreen;
        }
        /* 三个之后的  n+3 */
        ul li:nth-child(n+3){
            border: 1px solid rgb(4, 243, 4);
        }
        /* 后三个 */
        ul li:nth-last-child(-n+3){
            font-size: 30px;
        }
    </style>
</head>

伪元素:

伪元素:一般页面中的非主体内容可以使用创建内容

区别:

1.元素:HTML设置的标签

2.伪元素:由css模拟出的标签效果

注意点:

  1. 必须设置content属性才能生效
  2. 伪元素默认是行内元素

标准流:

标准流中块级元素的排版规则是:从上往下、垂直布局、独占一行

标准流中行内元素或行内块元素的排版规则是:从左往右、水平布局、空间不够自动折行

浮动:

<title>浮动</title>
    <style>
        div{
            height: 300px;
            width: 300px;
        }
        .a{
            background-color: aqua;
        }
        .b{
            background-color: rgb(54, 202, 81);
        }
        .c{
            background-color: rgb(110, 83, 230);
        }
        .d{
            background-color: rgb(243, 177, 36);
        }
        /* 浮动 */
        .a{
            float: left;
        }
        .b{
            float: left;
        }
        .c{
            float: left;
        }
        .d{
            float: left;
        }
        .e{
            height: 300px;
            width: 100%;
            clear: both;
            /* both:清除两边 */
            /* left:左 right:右 */
            /* none:不清除 */
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="a">a</div>
    <div class="b">b</div>
    <div class="c">c</div>
    <div class="d">d</div>
    <div class="e"></div>
</body>

清除浮动;

    .a{
            border: 1px solid rgb(218, 142, 155);
           overflow: hidden;
        }
        .b{
            height: 300px;
            width: 300px;
            margin: 5px;
            background-color: aqua;
            float: left;
        }
        .c{
            background-color: aquamarine;
            height: 300px;
            
        }
    </style>
</head>
<body>
    <div class="a">
        <div class="b">
            子元素的浮动不会对父元素的标签产生影响
        </div>
        <div class="b">
            需要设置副元素的高度,否则会造成 <br>
            父元素的边框塌陷
        </div>
        <div class="b"></div>
        <div class="b"></div>
    </div>
    <div class="c">c</div>
</body>
清除浮动:格外标签法
<style>
        .a{
            border: 1px solid rgb(78, 0, 13);
           overflow: hidden;
        }
        .b{
            height: 300px;
            width: 300px;
            margin: 5px;
            background-color: aqua;
            float: left;
        }
        .c{
            background-color: aquamarine;
            height: 300px;
        }
        .d{
            clear: both;
        }
    </style>
</head>
<body>
    <div class="a">
        <div class="b">
            格外标签法:
            在父元素的最后一个块元素
            设置样式clear:both
        </div>
        <div class="b">
            不建议使用:增加页面复杂度
        </div>
        <div class="b"></div>
        <div class="b"></div>
        <div class="d"></div>
    </div>
    <div class="c">c</div>
</body>
清除浮动:伪元素
<style>
        .a{
            border: 1px solid rgb(196, 66, 87);
          
        }
        .b{
            height: 300px;
            width: 300px;
            margin: 5px;
            background-color: aqua;
            float: left;
        }
        .c{
            background-color: aquamarine;
            height: 300px;
        }
        .cl::after{
            /* content:文字,图片 */
            content: "";
            display: block;
            clear: both;
            /* 补充写法 */
            height: 0px;
            /* 隐藏元素 */
            visibility: hidden;
        }
    </style>
</head>
<body>
    <div class="a cl">
        <div class="b">
            
        </div>
        <div class="b">
            
        </div>
        <div class="b"></div>
        <div class="b"></div>
        <div class="d"></div>
    </div>
    <div class="c">c</div>
</body>
清除浮动:双伪元素
 <style>
        .a{
            border: 1px solid rgb(196, 66, 87);
          
        }
        .b{
            height: 300px;
            width: 300px;
            margin: 5px;
            background-color: aqua;
            float: left;
        }
        .c{
            background-color: aquamarine;
            height: 300px;
        }
        .cl::before,
        .cl::after{
            /* content:文字,图片 */
            content: "";
            display: table;
        }
        .cl::after{
            clear: both;
        }
    </style>
</head>
<body>
    <div class="a cl">
        <div class="b"></div>
        <div class="b"></div>
        <div class="b"></div>
        <div class="b"></div>
        <div class="d"></div>
    </div>
    <div class="c">c</div>
</body>

相对定位:

特点:

1.需要配合方位属性实现移动

2.相对于自己的原本位置进行移动

3.在页面中占位置----没有脱标

代码:position:relative

 <style>
        div{
            height: 300px;
            width: 300px;
            background-color: pink;
        }
        .b{
            background-color: orange;
            position: relative;
            left: 150px;
            top: -150px;
        }
    </style>
</head>
<body>
    <div class="a"></div>
    <div class="b">
        相对定位:相对与自身进行移动
        1.没有脱标
        2.会保留原来的位置
    </div>
    <div class="c"></div>
</body>

绝对定位:

特点:

1.需要配合方位属性实现移动

2.相对于自己的原本位置进行移动

3.在页面中占位置----已经脱标

代码:position:absolute

<style>
        .a{
            height: 500px;
            width: 800px;
            background-color: pink;
            position: relative;
        }
        .c{
            height: 200px;
            width: 200px;
            background-color: yellow;
            position: absolute;
            bottom: 0px;
            left: 0px;
        }
        .b{
            height: 200px;
            width: 200px;
            background-color: orange;
            position: absolute;
            bottom: 0px;
            right: 0px;
        }
    </style>
</head>
<body>
    <div class="a">
        <div class="b">
            绝对定位:
            相对于非静态定位的父元素进行移动
            1.不保留原来的位置
            2.脱离了标准文档流
        </div>
        <div class="c">
        </div>
    </div>
子绝父相:

子级:绝对定位

父级:相对定位

固定定位:

  <title>固定定位</title>
    <style>
        body{
            height: 50000px;
            background-image: url(img/product.png);
        }
        .a{
            height: 400px;
            width: 100px;
            background-color: aqua;
            /* 固定定位 */
            position: fixed;
            right: 0;
            top: 200px;
        }
    </style>
</head>
<body>
    <div class="a">
        <p>
            固定定位: <br>
            相对于浏览器进行移动<br>  
            脱离标准文档流 <br>   
            不在保留原来位置
        </p>
    </div>
</body>

半遮罩:

 <style>
        .a{
            height: 500px;
            border: 1px solid pink;
            position: relative;
        }
        img{
            height: 500px;
        }
        .b{
            height: 100px;
            width: 800px;
            background-color: rgb(255, 187, 238);
            position: absolute;
            top: 300px;
            /* 透明度 */
            opacity: 0.5;
        }
    </style>
</head>
<body>
    <div class="a">
        <img src="img/banner.png" >
        <div class="b">
            半透明遮罩
        </div>
    </div>
</body>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值