zoukankan      html  css  js  c++  java
  • Python 前端CSS

    CSS3

    1.什么是css3:

      CSS3就是css语言,数字3是该语言的版本号;css语言开发的文件是以.css为后缀,通过在html文件中引入该css文件来控制html代码的样式(css语言代码也可以直接写在html文件中),采用的语言是级联样式表 (Cascading Style Sheet),也属于标记语言。

    2.作用:

      控制修改标签样式

    3.css注释

    /*这是注释*/
    css注释

    一 css三种引入方式

    1.行内式

       css样式书写在标签的style全局属性中,一条样式格式为 样式名: 样式值/ 单位;,可以同时出现多条样式

     

    <!-- 关键代码 -->
    <!-- 给div标签设置宽高背景颜色 -->
    <div style=" 200px; height: 200px; background-color: orange;"></div>
    行内式

    2.内联式

      css样式书写在head标签内的style标签中,样式格式为 css选择器 { 样式块 },样式块由一条条样式组成

    <!-- 关键代码 -->
    <head>
        <style>
            /* css语法下的注释语法 */
            /* 设置页面中所有h2标签宽高背景颜色 */
            h2 {
                width: 50px; 
                height: 50px; 
                background-color: orange;
            }
            /* 设置页面中所有h3标签宽高背景颜色 */
            h3 {
                width: 100px; 
                height: 100px; 
                background-color: red;
            }
        </style>
    </head>
    <body>
        <h2></h2>
        <h2></h2>
        <h3></h3>
        <h3></h3>
    </body>
    内联式

    3.外联式

     css样式的写法同内联式,但样式书写在css文件中,在html页面中用link标签引入css文件(建议在head标签中引入)

     

    1.#css文件夹下的my.css
    /* html文件会引入该css文件,设置所有引入了html文件中的所有p标签宽高背景颜色 */
    p {
         50px; 
        height: 50px; 
        background-color: orange;
    }
    
    2.#
    <!-- 关键代码 -->
    <head>
        <!--
        rel="stylesheet":引入的是层级样式表,也就是css文件
        type="text/css":引入文件采用的是css语法书写文本类型代码
        href="css/my.css":采用相当路径引入目标css文件
        -->
        <link rel="stylesheet" type="text/css" href="css/my.css">
    </head>
    <body>
        <!-- 该页面中的p标签样式都被my.css文件控制 -->
        <p></p>
        <p></p>
    </body>
    外联式

    二 css基础选择器

     css选择器本质就是css与html两种语法建立关联的特定标识符

     

    1.通配选择器
    
    /* 特定标识符 星号(*) -- 可以表示页面所有标签的名字 */
    /* 通配选择器控制页面中所有的标签(不建议使用) */
    * {
        /* 样式块 */
    }
    
    2.标签选择器
    
    /* 特定标识符 标签名 */
    /* 标签选择器控制页面中标签名为标签选择器名的所有标签*/
    div { /* 控制页面中所有div标签的样式 */
        /* 样式块 */
    }
    
    3.class选择器(提倡使用)
    
    
      /* 特定标识符 点(.) */
    /* class选择器控制页面中标签全局属性class值为class择器名的所有标签*/
    .box { /* 控制页面中所有标签全局属性class值为box标签的样式 */
        /* 样式块 */
    }
    
    4.id选择器
    
    /* 特定标识符 井号(#) */
    /* id选择器控制页面中标签全局属性id值为id择器名的唯一标签*/
    #box { /* 控制页面中唯一标签全局属性id值为box标签的样式 */
        /* 样式块 */
    }
    css基础选择器

    css组合选择器

    1.组合:

     

    /* 连接标识符 逗号(,) */
    /* 群组选择器就是一套样式块同时控制用逗号连接(,)的所有目标标签 */
    div, p, .box, #ele {
        /* 样式块 */
    }
    
    
    <!-- 页面中所有div标签、所有p标签、所有class属性值为box、唯一id属性值为ele的标签都能被匹配 -->
    <div>
        <div></div>
    </div>
    <p></p>
    <p></p>
    <i class="box"></i>
    <span class="box"></span>
    <b id="ele"></b>
    群组

    2.后代选择器和子代选择器

    #1.后代选择器(本等级下面所有)
    /* 连接标识符 空格( ) */
    /* 后代选择器控制的是最后置的选择器位匹配到目标标签(们),前置位的所有选择器都是修饰 */
    body .box i { /*最后置位的选择器为i标签选择器,前置位body标签选择器、class值为box的class选择器都是修饰*/
        /* 样式块 */
    }
    
    <!-- body标签内部的class属性值为box内部的i标签们都能被匹配,所以只匹配i标签,其他都是修饰 -->
    <body>
        <div class='box'>
            <span><i></i></span><!-- body与.box是直接父子关系,.box与i是间接父子关系,能被匹配 -->
        </div>
        <div>
            <span class='box'><i></i></span><!-- body与.box是间接父子关系,.box与i是直接父子关系,能被匹配 -->
        </div>
    </body>
    <!-- 标签的嵌套结构形成父子代标签,后代选择器可以匹配直接父子关系或间距父子关系形成的层次,所以两个i标签均能被匹配 -->
    
    
    #2.子代选择器(本等级下面相邻一个)
    /* 连接标识符 大于号(>) */
    /* 子代选择器控制的是最后置的选择器位匹配到目标标签(们),前置位的所有选择器都是修饰 */
    body>.box>i { /*最后置位的选择器为i标签选择器,前置位body标签选择器、class值为box的class选择器都是修饰*/
        /* 样式块 */
    }
    
    <!-- body>.box>i:同理body和.box都是修饰位,i才是目标匹配位 -->
    <body>
        <div class='box'>
            <span><i></i></span><!-- body与.box是直接父子关系,.box与i是间接父子关系,不能被匹配 -->
        </div>
        <div>
            <span class='box'><i></i></span><!-- body与.box是间接父子关系,.box与i是直接父子关系,不能被匹配 -->
        </div>
        <div class='box'>
            <i></i><!-- body与.box是直接父子关系,.box与i是直接父子关系,能被匹配 -->
        </div>
    </body>
    <!-- 子代选择器只能匹配直接父子关系,所以只能匹配最后一个i标签 -->
    后代和子代

    3.兄弟和相邻选择器

    #1.兄弟(同等级下面所有)
    /* 连接标识符 波浪号(~) */
    /* 兄弟选择器控制的是最后置的选择器位匹配到目标标签(们),前置位的所有选择器都是修饰 */
    #ele~div~i { /*最后置位的选择器为i标签选择器,前置位id值为ele的id选择器、div标签选择器都是修饰*/
        /* 样式块 */
    }
    
    <!-- #ele~div~i:同理#ele和div都是修饰位,i才是目标匹配位 -->
    <h3 id="ele"></h3>
    <div></div><!-- #ele与div是直接兄弟关系 -->
    <i></i><!-- div与i是直接兄弟关系,能被匹配 -->
    <div></div><!-- #ele与div是间距兄弟关系 -->
    <i></i><!-- div与i是直接兄弟关系,能被匹配 -->
    <!-- 标签的上下结构形成兄弟标签,兄弟选择器可以匹配直接兄弟关系或间距兄弟关系形成的层次,所以两个i标签均能被匹配 -->
    
    #2.相邻(同等级下一个)
    /* 连接标识符 加号(+) */
    /* 相邻选择器控制的是最后置的选择器位匹配到目标标签(们),前置位的所有选择器都是修饰 */
    #ele+div+i { /*最后置位的选择器为i标签选择器,前置位id值为ele的id选择器、div标签选择器都是修饰*/
        /* 样式块 */
    }
    
    <!-- #ele+div+i:同理#ele和div都是修饰位,i才是目标匹配位 -->
    <h3 id="ele"></h3>
    <div></div><!-- #ele与div是直接兄弟关系 -->
    <i></i><!-- div与i是直接兄弟关系,能被匹配 -->
    <div></div><!-- #ele与div是间距兄弟关系 -->
    <i></i><!-- div与i是直接兄弟关系,不能被匹配 -->
    <!-- 相邻选择器只能匹配直接兄弟关系,所以只能匹配第一个i标签 -->
    兄弟和相邻

    注意:后代和子代   以及兄弟和相邻的区别和相似

    4.交叉选择器

    /* 连接标识符 紧挨着(没有任何连接符) */
    /* 交叉选择器本质上是对一个目标标签的多个名字的同时表示 */
    div.box#ele.tag { /*div是标签名,box和tag都是class属性值,ele是id属性值*/
        /* 样式块 */
    }
    
    <!-- 标签名div、class名box及tag和id名ele都是对一个目标标签的修饰空格隔开
    <!-- class属性拥有多个值时,多个值之间用空格隔开 -->
    <div class="box tag" id="ele"></div>
    交叉

    5.属性选择器

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*
            1.具有某个属性名
            2.具有某个属性名及属性值
            3.具有某个属性名及属性值某个标签
            */
            /*找只要有hobby这个属性名的所有标签*/
            /*[hobby] {*/
            /*    background-color: red;*/
            /*    color: orange;*/
            /*}*/
    
            /*[hobby="jdb"] {*/
            /*    background-color: pink;*/
            /*}*/
            /*找input 具有属性名是hobby并且值是jdb的input标签*/
            input[hobby="jdb"] {
                background-color: greenyellow;
            }
        </style>
    </head>
    <body>
    <input type="text" name="username" hobby="jdb">
    <input type="text">
    <span hobby="jdb">span</span>
    </body>
    </html>
    属性

    四 a标签的伪类选择器

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            /*连接态*/
            a:link {
                color: pink;
            }
            /*鼠标悬浮态*/
            a:hover {
                color: red;
            }
            /*鼠标点击态*/
            a:active {
                color: purple;
            }
            /*访问过后的状态*/
            a:visited {
                color: dimgrey;
            }
        /*    input框被点击的状态 称之为获取焦点*/
            input:focus {
                background-color: orange;
            }
            input:hover {
                background-color: red;
            }
    
        </style>
    </head>
    <body>
    <a href="https://www.chouti.com">click me!</a>
    <input type="text">
    </body>
    </html>
    a标签的四大伪类

    五 伪元素选择器

    #1. first-letter 常用的给首字母设置特殊样式:
    
    #2.before :在每个<p>元素之前插入内容
    
    #3.after:在每个<p>元素之后插入内容
    
    #4.before和after多用于清除浮动。
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            p:first-letter {
                font-size: 48px;
                color: gold;
            }
    
            p:before {
                content: '$';
                color: gold;
            }
            /*after在解决浮动的问题上 很有用*/
            p:after {
                content: "?";
                color: red;
            }
        </style>
    </head>
    <body>
    <p>澳门最大线上赌场开业了,爱剪辑!</p>
    <p>澳门最大线上赌场开业了,爱剪辑!</p>
    <p>澳门最大线上赌场开业了,爱剪辑!</p>
    <p>澳门最大线上赌场开业了,爱剪辑!</p>
    </body>
    </html>
    伪元素

    六 选择器优先级

    1.选择器相同的情况下:
     就近原则
    
    2.选择器不同的情况下:
     行内  > id选择器 > 类选择器  > 标签选择器
    优先级
  • 相关阅读:
    使用 libevent 和 libev 提高网络应用性能
    An existing connection was forcibly closed by the remote host
    各种浏览器的兼容css
    vs输出窗口,显示build的时间
    sass
    网站设置404错误页
    List of content management systems
    css footer not displaying at the bottom of the page
    强制刷新css
    sp_executesql invalid object name
  • 原文地址:https://www.cnblogs.com/tfzz/p/11459873.html
Copyright © 2011-2022 走看看