zoukankan      html  css  js  c++  java
  • 从零开始学习html(七)CSS样式基本知识

    一、内联式css样式,直接写在现有的HTML标签中

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     5 <title>认识html标签</title>
     6 <style type="text/css">
     7 span{
     8    color:red;
     9 }
    10 </style>
    11 </head>
    12 <body>
    13     <p>慕课网,<span>超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;<span>服务及时贴心</span>,内容专业、<span>有趣易学</span>。专注服务互联网工程师快速成为技术高手!</p>
    14 </body>
    15 </html>
    内联式css样式,直接写在现有的HTML标签中

    CSS样式可以写在哪些地方呢?

    从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式、嵌入式和外部式三种。

    内联式css样式表就是把css代码直接写在现有的HTML标签中,如下面代码:

    <p style="color:red">这里文字是红色。</p>

    注意要写在元素的开始标签里,下面这种写法是错误的:

    <p>这里文字是红色。</p style="color:red">

    并且css样式代码要写在style=""双引号中,如果有多条css样式代码设置可以写在一起,中间用分号隔开。如下代码:

    <p style="color:red;font-size:12px">这里文字是红色。</p>

    试一试:使用内联式css样式为"超酷的互联网"这几个字设置字体颜色为蓝色

    在编辑器中13行中的第一个span标签中写入代码:

    style="color:blue"

    你写是否写入的代码像下面的样子:

     <span style="color:blue">超酷的互联网</span>


    二、嵌入式css样式,写在当前的文件中

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     5 <title>嵌入式css样式</title>
     6 <style type="text/css">
     7 span{
     8    color:red;
     9 }
    10 </style>
    11 </head>
    12 <body>
    13     <p>慕课网,<span>超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;<span>服务及时贴心</span>,内容专业、<span>有趣易学</span>。专注服务互联网工程师快速成为技术高手!</p>
    14 </body>
    15 </html>
    嵌入式css样式,写在当前的文件中

    现在有一任务,把编辑器中的“超酷的互联网”、“服务及时贴心”、“有趣易学”这三个短词文字字号修改为18px。

    如果用我们学习的内联式css样式的方法进行设置将是一件很头疼的事情(为每一个<span>标签加入sytle="font-size:18px"语句)。

    嵌入式css样式,就是可以把css样式代码写在<style type="text/css"></style>标签之间。如下面代码实现把三个<span>标签中的文字设置为红色:

    <style type="text/css">
    span{
    color:red;
    }
    </style>

    嵌入式css样式必须写在<style></style>之间,并且一般情况下嵌入式css样式写在<head></head>之间。如编辑器中的代码。

    来试一试:用嵌入式css样式设置字体颜色

    在代码编辑器中的段落中,有三个<span>标签,请把这三个<span>标签中的文字颜色都设置为蓝色

    你是否输入像下面样式的代码:

    span

           {color:blue;

    }

    三、外部式css样式,写在单独的一个文件中

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     5 <title>嵌入式css样式</title>
     6 <link href="style.css" rel="stylesheet" type="text/css" />
     7 </head>
     8 <body>
     9     <p>慕课网,<span>超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;<span>服务及时贴心</span>,内容专业、<span>有趣易学</span>。专注服务互联网工程师快速成为技术高手!</p>
    10 </body>
    11 </html>
    外部式css样式,写在单独的一个文件中
    1 span{
    2    color:red;
    3    
    4 }
    外部式css样式,写在单独的一个文件中

     外部式css样式(也可称为外联式)就是把css代码写一个单独的外部文件中,这个css样式文件以“.css”为扩展名,

    在<head>内(不是在<style>标签内)使用<link>标签将css样式文件链接到HTML文件内,如下面代码:

    <link href="base.css" rel="stylesheet" type="text/css" />

    注意:

    1、css样式文件名称以有意义的英文字母命名,如 main.css。

    2、rel="stylesheet" type="text/css" 是固定写法不可修改。

    3、<link>标签位置一般写在<head>标签之内。

    来试一试:用外部式css样式设置文字字号

    1、单击打开style.css文件(在html文件的下面),在第3行输入代码font-size:20px;观察结果窗口中文字大小的变化。

    style.css文件中的代码是不是跟下面的一样:

    span

            {color:red;

             font-size:20px;

    }

          内联:<span style="color:red;font-size:10px;" >text</span>

          嵌入:<style type="text/css">span{color:red;font-size:10px;}</style>

          外部:<link href="style.css" rel="stylesheet" type="text/css">

          rel属性用于定义链接的文件和HTML文档之间的关系。StyleSheet,的意思就是样式调用,

          内联式适用情况:局部特殊化

          嵌入式适用情况:统一标签样式格式

          外联式适用情况:方便代码重用和管理

          rel是relationship的英文缩写

          stylesheet中style是样式的意思,sheet是表格之意,总起来是样式表的意思

          rel="stylesheet" 描述了当前页面与href所指定文档的关系.即说明的是,href连接的文档是一个新式表

          link内声明外链css文件,href路径,rel为外链文档和本文档的关系即relative,type即为外链文档的类型。

    四、三种方法的优先级

     1 <!DOCTYPE HTML>
     2 <html>
     3 <head>
     4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     5 <title>嵌入式css样式</title>
     6 <link href="style.css" rel="stylesheet" type="text/css">
     7 <style type="text/css">
     8 span{
     9    color:red;
    10 }
    11 </style>
    12 </head>
    13 <body>
    14     <p>慕课网,<span style="color:pink">超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;服务及时贴心,内容专业、有趣易学。专注服务互联网工程师快速成为技术高手!</p>
    15 </body>
    16 </html>
    三种方法的优先级
    1 span{
    2    color:blue;
    3 }
    三种方法的优先级

    如果有一种情况:对于同一个元素我们同时用了三种方法设置css样式,那么哪种方法真正有效呢?在编辑器就出现了这种情况

    1、使用内联式CSS设置“超酷的互联网”文字为粉色

    2、然后使用嵌入式CSS来设置文字为红色

    3、最后又使用外部式设置文字为蓝色(style.css文件中设置)。

    但最终你可以观察到“超酷的互联网”这个短词的文本被设置为了粉色

    因为这三种样式是有优先级的,记住他们的优先级:内联式 > 嵌入式 > 外部式

    但是嵌入式>外部式有一个前提:嵌入式css样式的位置一定在外部式的后面。

    如代码编辑器就是这样,<link href="style.css" ...>代码在<style type="text/css">...</style>代码的前面(实际开发中也是这么写的)。

    感兴趣的小伙伴可以试一下,把它们调换顺序,再看他们的优先级是否变化。

    其实总结来说,就是--就近原则(离被设置元素越近优先级别越高)

    但注意上面所总结的优先级是有一个前提:内联式、嵌入式、外部式样式表中css样式是在的相同权值的情况下。

    任务

    分别使用内联式、嵌入式和外部式CSS样式,把“超酷的互联网”文本字号进行设置,感受一下这三种方法的优先级。

    别忘了设置字号的css样式代码:

    font-size:20px;

    有的小伙伴问了,如果有一种情况:对于同一个元素我们同时用了三种方法设置css样式,那么哪种方法真正有效呢?在右边编辑器就出现了这种情况

    1、使用内联式CSS设置“超酷的互联网”文字为粉色

    2、然后使用嵌入式CSS来设置文字为红色

    3、最后又使用外部式设置文字为蓝色(style.css文件中设置)。

    但最终你可以观察到“超酷的互联网”这个短词的文本被设置为了粉色。因为这三种样式是有优先级的,记住他们的优先级:内联式 > 嵌入式 > 外部式

    但是嵌入式>外部式有一个前提:嵌入式css样式的位置一定在外部式的后面。如右代码编辑器就是这样,<link href="style.css" ...>代码在<style type="text/css">...</style>代码的前面(实际开发中也是这么写的)。感兴趣的小伙伴可以试一下,把它们调换顺序,再看他们的优先级是否变化。

    其实总结来说,就是--就近原则(离被设置元素越近优先级别越高)

    但注意上面所总结的优先级是有一个前提:内联式、嵌入式、外部式样式表中css样式是在的相同权值的情况下,什么是权值呢?在后面的9-2小节中会讲解到。

    任务:

    分别使用内联式、嵌入式和外部式CSS样式,把“超酷的互联网”文本字号进行设置,感受一下这三种方法的优先级。

    别忘了设置字号的css样式代码:

    font-size:20px;

    复习:


    CSS内链式写在Html标签内。


    CSS外链式写在外部单独.css文件中,并在Html头部中要声明其路径(href)。


    CSS嵌入式写在Html头部中。

    1. 内联样式表的权值最高 1000


    2. ID 选择器的权值为 100


    3. Class 类选择器的权值为 10


    4. HTML 标签选择器的权值为 1

    一般情况是内联样式级别最高,内嵌其次,外部最低,如果同一元素在三个样式中都有设定则为多重样式的情况


    如果权重相同则使用就近原则,后大于前


    在同一组属性设置中标有“!important”规则的优先级最大


    CSS 优先级法则:


    A 选择器都有一个权值,权值越大越优先


    B 当权值相等时,后出现的样式表设置要优于先出现的样式表设置


    C 创作者的规则高于浏览者:即网页编写者设置的CSS 样式的优先权高于浏览器所设置的样式


    D 继承的CSS 样式不如后来指定的CSS 样式


    E 在同一组属性设置中标有“!important”规则的优先级最大

    如果不计较权重,离css修饰对象越近,就按照谁的规则去修饰。但是,比如要修饰<span>,那么

    ①在span内添加内链的style必然最近,于是就用这个了

    ②即便头部里有类选择器,比如.lei{font-size:20px;},而且这个类也是要在<span>标签内声明的,

    即<span class="lei"></span>,是不是也挺近,但不会执行的,

    因为CSS三大选择器权重都没有内链式<span style="font-size:15px">高,内链式很牛的。

    内联式CSS的优先级比嵌入式要高,也就是说在spen中加入style="color:blue"是没有问题的,他会优先于上面的样式表执行。

  • 相关阅读:
    Spring Boot 使用mysql数据库
    Nginx开启Gzip压缩大幅提高页面加载速度
    构建微服务:Spring boot 入门篇
    Python时间戳和日期的相互转换
    【Mongodb】aggregate限制返回字段
    MongoDB的skip,limit,sort执行顺序
    结对-结对四则运算生成器-最终程序
    C# List分页
    c# List的排序
    C#并行编程-Parallel
  • 原文地址:https://www.cnblogs.com/guxinglang/p/6796793.html
Copyright © 2011-2022 走看看