CSS中的样式层叠机制Cascade】的更多相关文章

CSS中的样式层叠机制Cascade 一.样式冲突   样式冲突是CSS渲染过程要解决的一个关键问题,样式冲突主要由两个原因造成: 元素包含了不同对象所赋予的样式:浏览器.用户.作者.其中,浏览器样式是指不对元素赋予样式时,元素所表现出来的样式,也就是浏览器赋予的元素默认样式:用户样式是指用户通过浏览器插件设定的样式,比如色弱者会对文字颜色进行修改:作者样式只是程序员所编写的CSS样式. 程序员经常会在CSS中对同一元素进行重复定义,这往往是因为程序员整体局部的样式编写习惯造成的,当然这是好的习…
CSS引用方式有3种,三种分别为:外部引入.内部引入.行内样式,下面一 一进行介绍. 1.外部引入:CSS代码在一个独立的文件中,HTML通过Link标签引入到页面. 代码格式:<link rel=“stylesheet” href="../css/index.css">: 注:1.link标签是head的子元素:    2.link是空元素,用于引入外部资源: 2.内部引入:将CSS代码放入HTML文档中的style元素 代码格式:<style type="…
obj.style.height只能获取行间样式,但是我们要怎么获取写在css文件中的样式呢? 首先我们要用一个新的方法currentStyle.这个方法由current和style两个单词组成意思是:目前的样式.也就是加载css文件后取出来的样式. currentStyle的用法是:元素.currentStyle.属性名 下面我们开始获取如图div的width样式,那我们就需要这样写: var w=document.getElementById('div').currentStyle.widt…
众所周知,obj.style只能够获取 <div id="a" style="width:100px;"></div> 结构上的样式 如果想要获取: <style> div{width:100px;} </style> 的样式的话,需要: function getStyle(obj, attr) { if(obj.currentStyle) { return obj.currentStyle[attr]; } else…
border-spacing:设置相邻单元格的边框间的距离; border-collapse:设置表格的边框是否被合并为一个单一的边框:{separate/collapse/inherit(IE不支持该属性)} text-align:水平对齐方式{left/center/right} vertical-align:设置垂直对齐方式{top/center/bottom} caption-side:设置表格标题的放置方式{top/bottom/inherit} empty-cells:隐藏表格中空单…
自http://blog.sina.com.cn/s/blog_98eef7830101cv8t.html获取的知识,特此感谢. <!DOCTYPE html> <html lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title>New Document</titl…
<body> <input type="button" id="btn" value="启动"/> <img src="timg.jpg" id="img" alt="" /> <script type="text/javascript"> window.onload = function() { var time =…
参数说明: 1.overflow-y : 设置当对象的内容超过其指定高度时如何管理内容:overflow-x : 设置当对象的内容超过其指定宽度时如何管理内容. 参数: visible:扩大面积以显示所有内容 auto:仅当内容超出限定值时添加滚动条 hidden:总是隐藏滚动条 scroll:总是显示滚动条 2.height : 设置滚动条的高度(修改其后数值即可). 3.滚动条颜色参数设置: scrollbar-3d-light-color 设置或检索滚动条亮边框颜色 scrollbar-h…
CSS中的样式一共有三种来源:创作人员.读者和用户代理,来源的不同会影响到样式的层叠方式,很多第一次学习CSS的朋友,对这三种来源可能会存在一些困惑,下面我写一下自己的理解,若有错误的地方还请指正. 首先,创作人员(author’s style)样式应该是我们最熟悉的,如果你是一个前端开发者,那么你写的那些样式就叫做创作人员样式. 然后是用户代理样式(agent’s style),用户代理也就是我们通常所说的浏览器(IE.Firefox等等),这些浏览器会提供一些默认的样式,比如IE浏览器中,一…
最近在做Lodop打印功能: 思路是:  用MasterPage搭个打印页面的框架, 然后在具体的页面中填入数据, 打印的样式由母版页和CSS来控制. 困扰了一天的问题是:  在打印的JS文件中, 引用外部css文件时, 需要拼出实际的含有IP地址的CSS文件地址, 并且需要用双斜杠(//)来代替单斜杠. =====后来遇到的问题:  css文件里的样式, 在页面上显示没有问题, 但是打印预览却没有样式.... 又挣扎了一天, 原来问题是: lodop中的加入css文件后, 不能识别css类(.…
之前说过了CSS有三种基本的布局机制:普通流.浮动和绝对定位.除非专门指定,否则所有的框都在普通流中定位.而普通流中元素框的位置由元素在HTML中的位置决定. 相对定位 相对定位实际上被看做普通流定位模型中的一部分,因为它是通过设置垂直或者水平位置,让这个元素相对于它原来的位置移动.而且,虽然它从原来位置移走,但是仍然占据原来所占的空间.可以用left,right来控制元素向右,左的移动,可以用top,bottom来控制元素的下,上的移动.需要注意的是:相对定位时,数值型偏移是对于元素自身的,而…
CSS中的定位与浮动 本文主要讲述CSS中的三种定位样式static.relative和absolute的区别以及浮动元素的特征. 定位样式 CSS中定位样式position的取值有三个,默认值:static,相对定位:relative,绝对定位:absolute. static: 采用默认定位时,一般可以不用设置position样式. 各个元素是按照文档流的形式从上往下排,同时保证块状元素独占一行的原则. relative : 生成相对定位的元素,相对于其正常位置进行定位,同时配合top, b…
font-family的调用方法: font-family:Arial,'Times New Roman','Microsoft YaHei',SimHei; font:bold 12px/.75em Arial,'Times New Roman','Microsoft YaHei',SimHei; 根据font-family的原则,假如客户终端不认识前面的字体,就自动切换到第二种字体,第二种不认识就切换到第三种,以此类推.假如都不能识别就调用默认字体 根据font-family的字体调用原则,…
想要实现英文和中文拼音变成全大写.全小写和首个字母大写,需要用到 css中text-transform样式属性,接下来介绍一下 1.text-transform的值 1)Capitalize:英文拼音的首字母大写 2)Uppercase:英文拼音字母全大写 3)Lowercase:英文拼音字母全小写 2.text-transform语法 text-transform:+值类型, 如:text-transform:Capitalize: 3.text-transform的简单使用 1)英文首字母大…
CSS中的样式属性比较多,经常使用的属性可以分为这么几类:字体.文本.背景.位置.边框.列表,以及其他一些样式属性.每个类中的属性都可以单独使用:如果同一个类中多个属性一起使用,还可以将它们整合为一行解决. 1  字体属性 通过字体属性可以设置字体的族科,改变字体的大小和风格,也可以调整字体加粗,以及让字体变形等.修饰字体的所有属性.值及描述如表6-1所示. 表1  CSS中修饰字体的属性 分别使用表1中字体类的每个样式属性,指定HTML的段落元素p中的字体为bold(粗体).italic(斜体…
CSS中的层叠.特殊性.继承.样式表中的@import 层叠 CSS有一个机制是层叠,层叠可以理解为对样式的覆盖,优先性为: 网站开发者的样式表 用户样式(通过设置浏览器的显示选项) 浏览器默认的样式 以上优先级递减,也就是说不写任何样式的情况下采用的就是浏览器默认显示样式. 特殊性 特殊性可以理解成开发者样式表代码的优先级,可以对应a,b,c,d四个级别.优先性为: 内联样式,a = 1 ID选择符,b=1 类选择符.伪类选择符.属性选择符,c=1 元素选择符和伪元素选择符,d=1 以上的a,…
层叠机制: 一个元素的某个特定的样式属性可能来自行间的style属性.内联样式表或者外部引入的样式表,以及浏览器自定义的样式,还有就是继承自父元素的样式,但是最终只会选择其中的某一个来表示,这个选择的过程就被称为层叠(cascading). 继承机制: 在继承机制中,样式不仅会应用到指定的元素,还会应用到它的后代中没有设置特定样式的元素,他的后代元素的样式就是继承自它父级的样式,但是不是父级所有的样式都会被继承,一般关于文字的样式都会被继承下来. 选择器的优先级: !important>行内样式…
css通过建立与文档的关联而实施效果.文档结构重要性不言而喻,对于建立良好的内容索引.提高可维护性.较好的可访问性:另,利于css选择器选择.继承机制. 概要地讲,层叠机制是处理对文档上应用样式时解决该应用何种样式的解决方案,涉及到重要性.特殊性.来源.顺序的问题.下面分别说明. 概要      每条声明都是有特殊性的,其特殊性由选择器组件确定.用户代理会将特殊性赋予给每条声明.由于存在选择器分组和声明分组的情况,用户代理会将它们解组出来的.然后对应个元素可能会有多条规则.这时,若都是针对相同的…
谈到层叠机制,首先我们要知道什么是声明冲突. 声明冲突有三个条件:①多个选择器选中同一个元素:②声明块里的属性相同:③属性的属性值不同.同时满足这三点时就会产生声明冲突.比如下图html代码: <div> <p><span>hello word</span></p> </div> 他的css文件如下: span{ color:red; } p>span{ color:blue; } div>p>span{ color…
by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wordpress/?p=5115 零.世间的道理都是想通的 在这个世界上,凡事都有个先后顺序,凡物都有个论资排辈.比方说食堂排队打饭,对吧,讲求先到先得,总不可能一拥而上.再比如说话语权,老婆的话永远是对的,领导的话永远是对的. 在CSS届,也是如此.只是,一般情况下,大家歌舞升平,看不出什么差异,即所谓的众生平等.但是,当发生冲突发生纠葛的时…
继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代.比如下面代码: <html><head> <style> p{border:1px solid red} </style> </head> <body> <p>123<span>123</span>123</p> </body> </h…
零.世间的道理都是想通的 在这个世界上,凡事都有个先后顺序,凡物都有个论资排辈.比方说食堂排队打饭,对吧,讲求先到先得,总不可能一拥而上.再比如说话语权,老婆的话永远是对的,领导的话永远是对的. 在CSS届,也是如此.只是,一般情况下,大家歌舞升平,看不出什么差异,即所谓的众生平等.但是,当发生冲突发生纠葛的时候,显然,是不可能做到完全等同的,先后顺序,身份差异就显现出来了.例如,杰克和罗斯,只能一人浮在木板上,此时,出现了冲突,结果大家都知道的.那对于CSS世界中的元素而言,所谓的“冲突”指什…
本文为转载内容,源地址:http://www.ofcss.com/2011/05/26/css-cascade-specificity.html 读到<重新认识CSS的权重>这篇,在文章最后给出了便于记忆的顺序: “important > 内联 > ID > 类 > 标签 | 伪类 | 属性选择 > 伪对象 > 通配符 > 继承”. 那么这个顺序是怎么得出来的呢?实际上在CSS2规范关于具体性(specificity)的定义中,描述是非常明确的,但是很…
html页面上的元素都可以看成是框组成的,框通过三种定位机制排列在一起就过程了我们看到的页面.而框就是盒模型. 盒模型 1.页面上的每个元素可以看成一个矩形框,每个框由元素的内容,内边距,边框和外边距组成. 2.如果在元素上添加背景,则背景是边框, 内边距和内容组成的区域. 3.在css中width和height指的是内容区域的宽度和高度.增加内边距,边框和外边距不会影响内容区域的尺寸,但会增加元素框的总尺寸.即width=element 注意:ie的盒模型中,width指的是内容,内边距,和边…
假如同一个标签被多个选择器选中,每个选择器都设置了相同的样式,浏览器中加载时这个样式听谁的? 不同选择器设置的同一个样式,只会选择一个进行加载,不会叠加. 为了解决听谁的问题,引入层叠性的概念. 层叠性:多个选择器选中同一个标签,设置同一个样式,浏览器中加载时,不会加载所有的属性值,挑选其中一个加载,其中一个值层叠/覆盖掉其他的值.   要实现层叠或覆盖就涉及到比较,下面就是比较选择器之间的权重的比较,权重的比较一共有两种情况:1.选择器选中了标签:2.选择器没有选中标签 首先说一下选择器的权重…
http://www.zhangxinxu.com/wordpress/2016/01/understand-css-stacking-context-order-z-index/ 零.世间的道理都是想通的 在这个世界上,凡事都有个先后顺序,凡物都有个论资排辈.比方说食堂排队打饭,对吧,讲求先到先得,总不可能一拥而上.再比如说话语权,老婆的话永远是对的,领导的话永远是对的. 在CSS届,也是如此.只是,一般情况下,大家歌舞升平,看不出什么差异,即所谓的众生平等.但是,当发生冲突发生纠葛的时候,显…
多重样式(Multiple Styles):如果外部样式.内部样式和内联样式同时应用于同一个元素,就是使多重样式的情况. 1.一般情况下,优先级从低到高,如下: 浏览器缺省(即浏览器默认) →(外部样式)External style sheet →(内部样式)Internal style sheet →(内联样式)Inline style 注意:如果外部样式放在内部样式的后面,则外部样式将覆盖内部样式. <head>     <style type="text/css"…
前端之HTML.CSS(四) CSS CSS三大特性 层叠性:多种样式的叠加,一个属性通过两个选择器设置在同一个元素上,后一个样式会把前一个样式层叠(覆盖).层叠性的两种情况:第一种样式冲突时,后样式覆盖前样式:第二种样式不冲突时,前后样式互补共同作用同一元素.(冲突:样式属性一样) <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>层叠性-测试</t…
CSS3 中有三种定位机制 : 普通文档流 (text)| 浮动(float) | 定位(position) 普通文档流 就是CSS中默认的文本文档 普通流中,元素位置由文档顺序和元素性质决定,块级元素从上到下依次排列,框之间的垂直距离由框的垂直margin值计算得到,行内元素在一行中水平布置 浮动 所有主流浏览器都支持 float 属性,给元素设置 float 样式 ,元素会脱离文档流 ,浮动的元素可以左右移动,直到他的外边框边缘碰到包含自己的框或者另一个浮动框的边缘. CSS 中,任何元素都…