css

一、CSS简介

作用:html是骨架,css是衣服
分类:
1、内联样式
    <p style="color: azure">你好,世界!</p>
2、内部样式
    <style>
        p {
            color: azure;
        }
    </style>
3、外部样式
    <link rel="stylesheet" href="index.css">

二、选择器

1、基本选择器
    a、标签选择器
    作用:应用于相同标签的样式布局
    p {
        color: blue;
    }
    b、ID选择器
    注意:id的值是唯一的,在html的标签中设置id
    #d0 {
        color: red;
    }
    c、类选择器
    注意:class值不唯一的,可以重复,在html的标签中设置class属性
    .t1 {
        color: chartreuse;
        font-size: 40px;
    }
    d、通用选择器
    作用:应用于全局样式设置
    * {
        color: darkgreen;
    }
2、组合选择器
    注意:组合选择器作用的是后面的选择器
    a、后代选择器
    注意:div选择器和p是嵌套关系
    div p {
        color: chocolate;
    }
    b、儿子选择器
    注意:是嵌套关系
    #d1>p {
        color: chartreuse;
    }
    c、毗邻选择器
    注意:并列关系
    div+p {
        color: blueviolet;
    }
    d、弟弟选择器
    注意:并列关系
    #d1~p {
        color: coral;
    }
3、属性选择器
    注意:这里的属性可以自定义,属性可以重复
    [title] {
        color: red;
        font-size: 40px;
    }

    [title="tree"] {
        color: blue;
        font-size: 50px;
    }
  /*title以什么开头*/
  [title^="hao"]{
      color: red;
  }

  /*title以什么结尾*/
  [title$="de"]{
     color: aqua;
  }

  /*title包含什么*/
  [title*=ao]{
      color: chocolate;
  }

  /*title值是独立的元素*/
  [title~="de"]{
      color: chartreuse;
  }
4、伪类选择器
/*link链接(没点过)*/
a:link {
   color: black;
}
/* link链接已点击*/
a:visited{
   color: darkred;
}
/*悬浮*/
a:hover{
   color: aqua;
}
/*鼠标点击*/
a:active{
   color: blue;
}
/*鼠标悬浮*/
.c1:hover{
    color: chartreuse;
}
.c1:active{
    color: darkgreen;
}
5、伪元素选择器
/*伪元素原则器     */
/*首字母*/
#p1:first-letter {
    color: darkred;
    font-size: 30px;
}
/*前面*/
#p2:before{
    content: "*";
    color: crimson;
}
/*后面*/
#p3:after{
    content: "[1]";
    color: crimson;
}
6、分组和嵌套 分组 p, h1 { color: darkolivegreen; font-size: 50px; } 嵌套涉及到组合选择器的后代选择器和儿子选择器

三、选择器的优先级

1、内联样式的优先级最高
2、相同选择器以靠近标签的为准
3、选择器的权重值   
内联样式1000 id选择器100 类选择器 10 标签选择器 1
注意:权重值相加,永不进位

四、属性

1、字体属性
#p1 {
      font-family: "Microsoft Himalaya", "微软雅黑";
      font-size: 30px;
      font-weight: bolder;
      color: chartreuse;
    }
2、文字属性
文字布局
text-align: left;
文字装饰
a {
    text-decoration: none;
}
首行缩进
text-indent: 24px;
3、背景属性
.d1 {
    height: 600px;
    width: 600px;
    /*背景颜色*/
    background-color: aqua;
    /*背景图片*/
    background-image: url("ss.png");
    /*背景图片是否重复 */
    background-repeat: no-repeat;
    /*背景图片的位置*/
    background-position: center;
}
本人不推荐使用
background: url("ss.png") no-repeat 50% 50%;
4、边框
.d3 {
    width: 600px;
    height: 600px;
    border-width: 10px;
    border-style: solid;
    border-color: crimson;
}
推荐: border: 5px solid #bdb89c;
5、display属性
/*li块级->行内*/
li {
    display: inline;
}

/*块级->行内 ,不占空间*/
.d1 {
    height: 300px;
    width: 300px;
    background-color: blueviolet;
    display: inline;
}
/*行内->块级*/
.s1{
    display: block;
}
6、CSS盒子模型
padding和margin如果有四个值,上、右、下、左
三个值:上、(左右)、下
两个值:上下、左右 div
{ width: 200px; height: 200px; background-color: blueviolet; border: 20px solid red; padding: 10px; margin: 30px; } 7、float div.d1 { width: 20%; height: 200px; background-color: blueviolet; float: left; } .d2{ width: 80%; height: 200px; background-color: gold; float: left; }
8、clear
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        * {
            padding: 0px;
            margin: 0px;
        }
        /*设置float,浮动*/
        /*设置div为 float*/
        .c1 {
            width: 200px;
            height: 200px;
            /*background-color: aqua;*/
            border: 5px solid red;
            float: left;
        }
        #d1 {
            border: 3px solid black;
        }
        /*利用伪元素选择器和display属性,把""变成块级标签*/
        #d1:after {

            content: "";
            clear: left;
            display: block;
        }
    </style>
</head>
<body>
<div id="d1">
    <div class="c1"></div>
    <div class="c1"></div>
</div>
<div>hello, world</div>
</body>
</html>
9、overfloat 溢出
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        * {
            margin: 0px;
            padding: 0px;
        }
        .c1{
            height: 200px;
            width: 200px;
            border: 2px solid red;
            overflow: auto;
            
        }
    </style>
</head>
<body>
<div class="c1">君不见黄河之水天上来,奔流到海不复回。君不见高堂明镜悲白发,朝如青丝暮成雪。人生得意须尽欢,莫使金樽空对月。天生我材必有用,千金散尽还复来。烹羊宰牛且为乐,会须一饮三百杯。
岑夫子,丹丘生,将进酒,杯莫停。与君歌一曲,请君为我侧耳听。钟鼓馔玉不足贵,但愿长醉不复醒。古来圣贤皆寂寞,惟有饮者留其名。 陈王昔时宴平乐,斗酒十千恣欢谑。主人何为言少钱,径须沽取对君酌。
五花马,千金裘,呼儿将出换美酒,与尔同销万古愁。
</div>
</body>
</html>                 
设置圆
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        * {
            margin: 0px;
            padding: 0px;
        }
        .c2{
            height: 400px;
            width: 400px;
            border: 2px solid rebeccapurple;
            border-radius: 100%;
            overflow: hidden;
        }
    </style>
</head>
<body>
<div class="c2"><img src="b.png" alt="图片" title="老婆"></div>
</body>
</html>
10、position
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        /*relative相对位置*/
        /*absolute绝对位置*/
        /*fixed固定位置*/
        * {
            margin: 0px;
            padding: 0px;
        }
        .c1,
        .c2,
        .c3,
        .c5{
            width: 150px;
            height: 150px;
        }
        .c1{
            background-color: rebeccapurple;
        }
        .c2 {
            background-color: red;
            position: relative;
            left: 300px;
            top: 800px;
        }
        .c3{
            background-color: aqua;
            position: relative;
            left: 200px;
        }
        .c4{
            background-color: red;
            position: fixed;
            right: 20px;
            bottom: 10px;
            width: 50px;
            height: 20px;
        }
        .c5{
            background-color: black;
            position: absolute;
            left: 150px;
            top: 800px;
        }
    </style>
</head>
<body>
<div class="c1"></div>
<div class="c2"></div>
<div class="c3">
    <div class="c5"></div>
</div>
<div class="c4"></div>
</body>
</html>

 补充

1、伪元素属性
/*input输入框获取焦点时样式*/
input:focus {
  outline: none;
  background-color: #eee;
}
2、清除float的副作用
.clearfix:after{
    content: "";
    display: block;
    clear: both;
}
3、background-attachment: fixed; 固定图片 4、知识点 a、块级标签可以设置高和宽,行内模块不能设置 b、float后,变成块级模块,自动脱离文件流
原文地址:https://www.cnblogs.com/wt7018/p/11133728.html