---恢复内容开始---

<!DOCTYPE html>
<html>
<head>
<title>div test</title>
</head> <style> div{ height: 300px;
width:200px;
background: blue;
} #main{ background: red;
} #footer{ background:grey;
} </style> <body> <div id="header"></div>
<div id="main"></div>
<div id="footer"></div> </body> </html>

以上代码先是设置了所有的div的背景色是蓝色,这样body中的三个div的背景色就都是蓝色的了,后来又通过id的形式设置了main这个div的背景色是red,这个属性会覆盖掉通过div设置的蓝色背景,footer也是一样的道理。

可如果是这样结果是什么样子的呢?

<!DOCTYPE html>
<html>
<head>
<title>div test</title>
</head> <style>
#main{ background: red;
} #footer{ background:grey;
} div{ height: 300px;
width:200px;
background: blue;
} </style> <body> <div id="header"></div>
<div id="main"></div>
<div id="footer"></div> </body> </html>

main和footer这两个div的颜色最后会是蓝色的吗?经过chrome测试,发现并没有。

这说明浏览器渲染html的时候并不是从上到下按照css代码的编写顺序执行的,而是id的css属性会覆盖掉元素的css属性,和css代码写在前面后面没有关系。

---恢复内容结束---

<!DOCTYPE html>
<html>
<head>
<title>div test</title>
</head> <style> div{ height: 300px;
width:200px;
background: blue;
} #main{ background: red;
} #footer{ background:grey;
} </style> <body> <div id="header"></div>
<div id="main"></div>
<div id="footer"></div> </body> </html>

以上代码先是设置了所有的div的背景色是蓝色,这样body中的三个div的背景色就都是蓝色的了,后来又通过id的形式设置了main这个div的背景色是red,这个属性会覆盖掉通过div设置的蓝色背景,footer也是一样的道理。

可如果是这样结果是什么样子的呢?

<!DOCTYPE html>
<html>
<head>
<title>div test</title>
</head> <style>
#main{ background: red;
} #footer{ background:grey;
} div{ height: 300px;
width:200px;
background: blue;
} </style> <body> <div id="header"></div>
<div id="main"></div>
<div id="footer"></div> </body> </html>

main和footer这两个div的颜色最后会是蓝色的吗?经过chrome测试,发现并没有。

这说明浏览器渲染html的时候并不是从上到下按照css代码的编写顺序执行的,而是id的css属性会覆盖掉元素的css属性,和css代码写在前面后面没有关系。

通过id设置的css属性和通过元素设置的css属性冲突了,优先级哪个高?的更多相关文章

  1. 黑马vue---16、vue中通过属性绑定为元素设置class类样式

    黑马vue---16.vue中通过属性绑定为元素设置class类样式 一.总结 一句话总结: 这里就是为元素绑定class样式,和后面的style样式区别一下 vue中class样式绑定方式的相对于原 ...

  2. 第二章 Vue快速入门-- 15 vue中通过属性绑定为元素设置class类样式

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  3. vue通过属性绑定为元素设置class样式

    第一种方式,直接传递一个数组,注意使用v-bind绑定             <h1 :class="['red','size'">这是一个h1文本</h1&g ...

  4. from表单、css选择器、css组合器、字体样式、背景属性、边框设置、display设置

    目录 一.form表单 1.form表单功能 2.表单使用原理 二.前端基础之css 1.关于css的介绍 2.css语法 3.三种编写CSS的方式 3.1.style内部直接编写css代码 3.2. ...

  5. web前端学习(三)css学习笔记部分(1)-- css入门基础知识+基本样式

    1.介绍及语法 1.1CSS概述: CSS指层叠样式表 CSS样式表极大地提高了工作效率 如果值大于一个单词,需要加上引号(意思是值只有一个的时候可以不加引号) 1.2CSS高级语法 1.选择器分组 ...

  6. 解决子元素设置margin-top,效果到父元素上的问题

    有时当我们设置子元素的margin-top,但是却发现子元素没有出现上外边距的效果,反而是父元素出现了上外边距的效果. 这种问题的解决方法如下: 1.给父元素加边框. 2.给父元素设置padding- ...

  7. CSS关于子元素设置了float属性后父元素高度为0的解释和解决方法

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  8. CSS和SVG中的剪切——clip-path属性和<clipPath>元素

    剪切是什么 剪切是一个图形化操作,你可以部分或者完全隐藏一个元素.被剪切的元素可以是一个容器也可以是一个图像元素.元素的哪些部分显示或隐藏是由剪切的路径来决定的. 剪切路径定义了一个区域,在这个区域内 ...

  9. Jquery css函数用法(判断标签是否拥有某属性)

    判断一个层是否隐藏:$("#id").css("display")=="none"  ;在所有匹配的元素中,设置一个样式属性的值:$(&qu ...

随机推荐

  1. 【Cordova】Cordova开发

    引言 微软开启新战略--移动为先,云为先.作为开发者,首先感受到的变化就是VS2015预览版增加了对各种跨平台框架的支持,极大方便了我们的开发.其中号称原生性能的Xamarin要收费,挺贵的,一般人还 ...

  2. Microsoft Visual Studio 2012 Update 4 RC 3 离线安装程序

    Microsoft Visual Studio 2012 Update 4 RC 3 离线安装程序 ☆ 微软官网地址:☆ http://www.microsoft.com/en-us/download ...

  3. [基本操作] kd 树

    概念就不说了吧,网上教程满天飞 学了半天才知道,kd 树实质上只干了两件事情: 1.快速定位一个点 / 矩形 2.有理有据地优化暴力 第一点大概是可以来做二维平面上给点/矩形打标记的问题 第二点大概是 ...

  4. Linux 修改PostgreSQL外部访问白名单

    1. 查找配置文件 # find / -name pg_hba.conf # find / -name postgresql.conf 2.修改 2.1 修改pg_hba.conf 查找IPv4 lo ...

  5. codevs 2503 失恋28天-缝补礼物

    题目描述 Description 话说上回他给女孩送了n件礼物,由于是廉价的所以全部都坏掉了,女孩很在意这些礼物,所以决定自己缝补,但是人生苦短啊,女孩时间有限,她总共有m分钟能去缝补礼物.由于损坏程 ...

  6. expect 切换用户

    安装expect yum install expect -y #!/bin/expect -f spawn su - expect "Password:" send "n ...

  7. Unity3D自定义资源配置文件

    http://blog.csdn.net/candycat1992/article/details/52181814 写在前面 我竟然最近两天才知道Unity中ScriptableObject的存在… ...

  8. think python chapter3

    3.1 built-in function type(42)=> <class 'int'> int('32')=>32 int(3.9) => 3 int(-2.3)= ...

  9. 在MySQL中设置事务隔离级别有2种方法:

    在MySQL中设置事务隔离级别有2种方法: 1 在my.cnf中设置,在mysqld选项中如下设置 [mysqld] transaction-isolation = READ-COMMITTED 2 ...

  10. case编写的httpd简单启停脚本

    case编写的httpd简单启停脚本 #!/bin/bash HTTPD="/etc/init.d/httpd" . /etc/init.d/functions case &quo ...