• css基础知识1——css基础语法、css选择器、css继承和层叠


    CSS是层叠样式表,用于定义HTML内容在浏览器内的显示样式

    css的优点:

    (1)css简化html相关标签,网页体积小,下载快

    (2)解决内容与表现分离的问题

    (3)更好的维护网页,提高工作效率

    css基础语法

    (1)css样式规则由两部分组成:选择器、声明

    选择器的作用是:告诉浏览器给网页中的谁去设置样式

    声明:是由一对对的名值对组成格式,两个名值对之间由分号隔开:{属性名:属性值;属性名:属性值;.....}

    css样式格式:

    选择器{属性名:属性值;属性名:属性值;.....}

    选择器1,选择器2,选择器3,选择器4......{属性名:属性值;属性名:属性值;.....}表示多个选择器都设置了相同的样式

    (2)css注释格式:/*注释语句*/

    css使用方法

    (1)css的引用方式

    a.内联样式(行内样式)

    在开始标签内添加style样式属性,如:<p style="color: red;font-family: '微软雅黑';...">内容 </p>

    缺点:增加html代码的冗余性,使代码没有达到分离的效果,同时也不便于后期的维护

    b.嵌入样式(内部样式表)

    在<head></head>标签内:加入<style type="text/css">   css样式......     </style>

    如:

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>内部样式表</title>
            <style type="text/css">
                h1,h2{color: red;font-family: "微软雅黑";}
                p{color: black;font-size: 20px;}
            </style>
        </head>
        <body>
            <h1>我是一号标题</h1>
            <h2>我是二号标题</h2>
            <p>我是p标签</p>
        </body>
    </html>

    c.外部样式表

    把css样式代码写在独立的一个文件中,然后再在<head></head>之间进行文件的引入,扩展名:css文件名.css

    引入外部文件:

    <head>

    <link href="XXX.csscss文件的位置" rel="stylesheet" type="text/style"/>

    </head>

    注意:<link/>也是放在<head>标签之间

    外部样式表在开发时经常使用到它的优点:css与html是分离的,便于代码的修改,后期也好维护

    d.导入式

    这种方式同样写在<style>标签内,但是要导入的文件同样是单独的css格式的文件

    @import “外部css样式”

    格式:

    <head>
            <meta charset="UTF-8">
            <title>导入式</title>
            <style type="text/css">
                @import url("XXX.css");/*写法一*/
                @import "XXX.css";/*写法二*/
            </style>
        </head>

    css引入方法的总结:

    (2)css使用方法优先级

    行内样式>内部样式>外部样式

    说明:

    1.链入外部样式表与内部样式表之间的优先级取决于所处位置的先后

    2.最后定义的优先级较高(就近原则)

    css选择器

    (1)标签选择器

    以HTML标签作为选择器

    如:

    h1,h2{color: red;font-family: "微软雅黑";} p{color: black;font-size: 20px;}

    (2)类选择器

    为HTML标签添加class属性,通过类选择器为具有此class属性的元素设置css样式,格式:.class名{属性名:属性值;属性名:属性值...}

    <head>
            <meta charset="UTF-8">
            <title>类选择器</title>
            <style type="text/css">
                .red{color: blue;}
            </style>
        </head>
        <body>
            <h1 class="red one">我是一号标题</h1>
            <h2>我是二号标题</h2>
            <p class="red">我是p1标签</p>
         <p >我是p2标签</p>
    </body>
     p.red{color: red;font-size: 20px;} h.red{color: blue;}可对不同类型元素的同一个名称的类选择器设置不同的样式规则
    这里只有设置了class属性的<p><h1>标签才可以引用该样式
    又如<h1 class="red one">我是一号标题</h1>这里引入多个class属性值,中间用空格隔开

    (3)ID选择器

    为HTML标签添加ID属性,通过ID选择器来为具有此ID的元素设置css规则

    如:

    <head>
            <meta charset="UTF-8">
            <title>类选择器</title>
            <style type="text/css">
                #red{color: red;}
                .blue{color:blue}
            </style>
        </head>
        <body>
            <h1 id="red">我是一号标题</h1>
            <h2>我是二号标题</h2>
            <p class="blue">我是p标签</p>
        </body>

    (4)全局选择器

    为所有标签设置样式:*{color:blue;......}

    (5)群组选择器

    格式如下:h1,.h2,#red{color: red;font-family: "微软雅黑";},选择器与选择器之间用逗号隔开

    (6)后代选择器

    使用后代选择器设置,之间用空格隔开,

    格式:

    p em{font-size:40px}表示p元素下的所有em标签的字体大小都设置为40px

    #p1 em{......}表示id为p1标签中的em

    p.red a em{......} 表示class为red的p标签中的a标签中的em

      (7)  伪类选择器

    伪类选择器定义特殊状态下的样式,它用来完成标签、id、class及其他属性不能完成的样式

    a.链接伪类:

    链接的4种状态:激活状态、已访问状态、未访问状态、鼠标悬停状态

     

     注意:

    (1)hover和active不只是用用于a标签它们也可以用于其他的元素

    hover是用于访问的鼠标经过某个元素时

    active用于一个元素被激活时(即按下鼠标之后到放开鼠标之前的时间)

    如:p:hover{color;red}   p:active{font-size:20px}

    (2)IE及更早版本,支持<a>元素的4种状态

        IE6浏览器不支持其他元素的:hover和active

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title>伪类选择器</title>
            <style type="text/css">
                a:link{color: blue ;}
                a:visited{color:green;}
                a:active{color: orange;}
                p:hover{color: red;}
                p:active{font-size: 20px;}
            </style>
        </head>
        <body>
            <a href="http://www.baidu.com" target="_blank">css使用方法</a>
            <p>慕课网</p>
        </body>
    </html>

    css继承和层叠

    (1)css继承

    继承的优点:父元素设置样式后,子元素可以继承部分属性,这样可以减少css代码

    但是要注意:不是所有的属性都可以被继承的

     (2)层叠

    可以同时定义多个样式

    当定义的这些样式不冲突的时候,多个样式可层叠为一个;当定义的样式冲突的时候,按照不同样式规则优先级来应用样式

    (2)css层叠

    css优先级

    (1)css选择器的优先级

    a.ID选择器>class选择器>标签选择器

    b:同一个元素引入多个class选择器的时候,就近原则,即谁离这个标签越近谁生效,与定义class值的先后顺序没有关系,和定义样式值的先后顺序是有关系的

    c.同类标签选择器同样也是遵循就近原则

    (2)css优先级规则

    a:同一样式表中:

    (I)权值相同 就近原则(离被设置元素越近优先级越高)

    (II)权值不同  根据权值来判断css样式,哪种css样式权值高,就使用哪种样式

    标签选择器:权值为1;类选择器和伪类:权值为10;ID选择器:权值为100;通配符选择器:权值为0;行内样式:权值为1000

    (III)权值规则

    统计不同选择器的个数

    每类选择器的个数乘以相应权值

    把所有的值相加得出选择器的权值

    (3)派生选择器的优先级

    !important优先级是最高的

    css命名规范

    采用英文字母、数字以及“-”和“_”命名

    以小写字母开头,不能以数字和“-”、“_”开头

    命名形式:单字、连字符,下划线和驼峰

    使用有意义命名

     

     

    日积月累
  • 相关阅读:
    Redis 6.0 新特性多线程连环13问!
    这些Java8官方挖过的坑,你踩过几个?
    读Hadoop3.2源码,深入了解java调用HDFS的常用操作和HDFS原理
    AI学习笔记:人工智能与机器学习概述
    千亿级互联网平台技术架构及背后那些事
    报告老板,微服务高可用神器已祭出,您花巨资营销的高流量来了没?
    千亿级平台技术架构:为了支撑高并发,我把身份证存到了JS里
    从技术思维角度聊一聊『程序员』摆地摊的正确姿势
    TryCatch包裹的代码异常后,竟然导致了产线事务回滚!
    SpringBoot集成邮件发送
  • 原文地址:https://www.cnblogs.com/qiumh/p/11923855.html
Copyright © 2020-2023  润新知