CSS

作者: RayRaymond | 来源:发表于2020-05-27 10:03 被阅读0次

    简介

    • cascading style sheet :层叠样式表
    • 为什么用:
      • css弥补了html语言的不足 css具有更多的渲染功能
      • 方便维护(html专门搭建结构、css专门渲染样式)
    选择符{ 
        属性1:属性值; 
        属性2:属性值1 属性值2 属性值3;
    }
    
    • css声明必须放在花括号里面
    • 属性和属性值之间用 冒号 连接
    • 每一条声明的结尾用分号
    • 如果一个属性有多个属性值的时候,属性值与属性值之间用空格隔开

    样式表

    内部样式表

    • 创建:<style type="text/css/...."> </style>

    • 尽量把内部样式放在 head 描述区里面

      先加载样式再加载标签,保证用户体验

    外部样式表

    <link rel="stylesheet" href="./css/wangshuai.css">
    
    • 创建:建立一个后缀名为.css的文件即可

    • 导入:

      1. <link rel="stylesheet" href="./css/wangshuai.css"> 优先使用!!!

        • rel="stylesheet" 建立关联性
        • 尽量把放在 head 描述区里面
      2. <style>
            @import url("./css/wangshuai.css");
        </style>
        
      3. 区别:

        • link 是 html 的, @import 是 css 的

        • link导入的css 和 html结构同时加载

          @import 等待html结构加载完毕再加载css

        • @import 不同做一些DOM动态操作。

        • 兼容性区别

    内联样式表

    • 创建:用style属性里面写 css 语句
    • 较少使用,维护不方便

    权重

    • 三个样式表同时作用在div上面,执行谁 谁的权重就最高。

    • 内联样式表权重最高。

    • 内部样式表 和 外部样式表权重关系和书写顺序有关

    (后写的优先执行,后写把前写的覆盖,覆盖的只是相同属性,不同属性会继续执行)

    • 产生权重 权重关系,必然会体现 css 的层叠性

    网页布局

    选择符

    1. 类型选择符

    直接使用 html 标签当做选择符,选择所有的同类标签

    </head>
        <style>
            h2{
                width: 400px;
                background-color: tomato;
            }
            div{
                background-color: teal;
            }
        </style>
    <body>
        <h2>111</h2>
        <div>11</div>
        <div>1</div>
        <div>1</div>
    </body>
    

    2. ID选择符 #id

    划分网页外围的结构!

    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            /* 清空所有标签外边距和内填充 */
            * {
                margin: 0;
                padding: 0;
            }
    
            /* 公共的宽度 */
            #logo,
            #nav,
            #banner {
                width: 1000px;
            }
    
            /* logo */
            #logo {
                height: 100px;
                background: orange;
            }
    
            /* nav */
            #nav {
                height: 58px;
                background: black;
            }
    
            /* banner */
            #banner {
                height: 465px;
                background: pink;
            }
        </style>
    </head>
    
    <body>
        <!-- logo -->
        <div id="logo"></div>
        <!-- nav -->
        <div id="nav"></div>
        <!-- banner -->
        <div id="banner"></div>
    </body>
    

    3. 起名规范

    • 避开 关键字!
    • 小写英文字母开头,后面可以跟数字字母下划线
    • 反映用途
    • 驼峰命名 boxLeft
    • 下划线 box_left
    • 连字符

    4. 类名选择器 .class

    • 起名

      <标签 class="名称"></标签>
      
    • 应用

      .名称{css样式}
      
    • 特点

      • 一个标签可以有多个 class <div class="china cn chinese"></标签>

      • class 可以重复出现

      • 更适合定义一类样式 具有相同特点的可以一起定义

        起名的时候包含相同字符,然后用 .相同字符 匹配

    5. 包含选择符

    通过父元素找子元素

    父元素选择符 子元素选择符{ css代码 }

        <style>
            .box{
                width:700px;
                height:300px;
                background:orange;
            }
    
            .box #boxSmall{
                background: teal;
            }
    
        </style>
    

    6. 群组选择符

    把分散的标签组合成一组,让后给一组添加样式。

        <style>
            #links,
            #bottomWrap
            .box {
                width: 1000px;
            }
        </style>
    

    7. 通配符 *

    选择当前页面中所有的标签!

        <style>
            /* 清空所有标签外边距和内填充 */
            * {
                margin: 0;
                padding: 0;
            }
        </style>
    

    8. 伪类选择符

    • 对状态做更改

      • 选择符:link {color: red;} 未访问的链接状态
      • 选择符:visited {color: green;} /* 已访问的链接状态 */
      • 选择符:hover {color: blue;} /* 鼠标滑过链接状态 */
      • 选择符:active {color: yellow;} /* 鼠标按下去时的状态 */
    • 顺序不能更改

    • 鼠标滑过做样式更改

          <style>
              .box{
                  width:500px;
                  height:300px;
                  background:orange;
              }
              .box:hover{
                  /* 鼠标滑过box之后更改自身的样式 */
                  background:pink;
              }
          </style>
      

    选择符权重

    • id选择符 > class选择符 > 标签选择符
    • 权重总结:
    选择符 权重
    内联样式表 1000
    id #id{} 100
    class .class{} 10
    标签 h2{ } 1
    包含选择符 权重是父子元素选择符权重的和
    群组选择符 本身的权重没有发生变化
    通配符 0
    伪类选择符 10

    注:权重相同的时候,按照后写的执行。

    相关文章

      网友评论

          本文标题:CSS

          本文链接:https://www.haomeiwen.com/subject/xrgiahtx.html