css入门知识总结

181 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路

css入门知识总结

1.简介

1.1 作用

设置HTML中的文本内容(字体,大小,颜色,对齐方式)、图片外观(宽高,边框样式,边距)以及版面布局和外观显示样式

1.2 价值

让HTML专注做结构呈现,样式交给css

2.引入方式

三种样式表

1.行内样式表 控制一个标签 结构样式混写 使用少

2.内部样式表 控制一个页面 内部的结构样式分离 使用多

3.外部样式表 控制多个页面 结构和样式完全分离 使用多

2.1 外部样式表

新建一个后缀名为css的样式表

通过link标签引入它

3.三大特性

层叠性

相同的选择器如果有设置相同的样式来渲染它 那么它只会选择一个样式来渲染 其他的样式都会被覆盖

  <style>
        div {
            color: blue;
            font-size: 30px;
        }
​
        div {
            color: brown;
​
        }
​
        /* 此处div的颜色层叠冲突 采取的颜色是最近的brown颜色  但是字型还是会采取第一个里面的 */
    </style>

继承性

子元素可以继承父元素的某些属性 但是width height padding margin 不能继承

除非添加inherit属性

优先级

同一个DOM元素被多个选择器指定时 就会产生优先级

选择器相同时 则根据层叠性来 后面的覆盖前面的

选择器不同时(标签选择器和id选择器可以指向同一个元素 但是id权重高于标签) 则选择权重最高的

复合选择器 选择权重叠加后 权重最高的

 <style>
        /* 权重的叠加问题主要争对于复合选择器 */
        /* 标签选择器ul 的权重为0,0,0,1 并且li的权重也为0,0,0,1
        故ul li的权重为0,0,0,1+1大于单独的li标签的权重 
        虽然权重可以叠加但是权重不能进位*/
        ul li {
            color: seagreen;
        }
​
        li {
            color: red;
​
        }
​
        .nav li {
            color: pink;
        }
​
        /* 同理这里是由类选择器和标签选择器组成的权重要大于 ul li的权重 */
    </style>
</head><body>
    <ul class="nav">
        <li>1111</li>
        <li>2222</li>
        <li>3333</li>
    </ul>
</body>

4.属性

4.1布局定位属性

display/position/float/clear/visbility/overflow

4.2自身属性

width/height/margin/padding/background

4.3文本属性

color/font/text-decoration/text-align等

4.4其他属性(css3)

content/cursor/border-radius/box-shadow/text-shadow

5.选择器的作用

选择标签

6.选择器的分类

基本选择器

标签选择器 div{}

id选择器 #div1{} 记得是#开头

类选择器 .div1{} 记得是.开头

通配符选择器 *{} 选择页面的所有元素

复合选择器

后代选择器 格式为:元素1 元素2 可以选择某元素里面所有的子元素

子元素选择器 格式为:元素1 > 元素2 只能选择某元素里面最近一级的子元素

 <style>
        .nav a { /* 这是后代选择器 可以改变nav里面包含的所有a标签里面的字的颜色*/
            color: red;
        }
​
       
        .lic>a {/* 这是子选择器 只选择选择比lic第一级的a标签 */
            color: red;
        }
   
    </style>
</head><body>
    <div class="nav">
        <a href="#">hhhh</a>
        <p>
            <a href="#">哈哈哈</a>
        </p>
​
    </div>
    <!-- div的儿子是第一个a标签 第二个a标签不算儿子 -->
    <br>
    <br>
    <div class="lic">
        <a href="#">hhhh</a>
        <p>
            <a href="#">哈哈哈</a>
        </p>
​
    </div>
</body>

并集选择器 选择多组标签 同时为它们定义相同的样式

伪类选择器:

1链接伪类选择器:

a:link  //选择所有未被访问的链接
a:visited//选择所有已被访问的链接
a:hover//选择指针位于其上的链接
a:active//选择活动链接(即鼠标点击链接但未弹起时)

2:focus伪类选择器

选择表单获取焦点时的元素 可以设置表单获得焦点时的样式

   <style>
        input:focus {
            background-color: pink;
        }
    </style>
</head><body>
    <input type="text">
​
​
</body>

\