CSS 基础 优先级 选择器 继承
1、样式优先级
(内联样式)Inline style > (内部样式)Internal style sheet > (外部样式)External style sheet > 浏览器默认样式
<p style="width:10px"> 页面内<style></style> 引用外部样式文件
2、 选择器优先级
以下列表逐级增加:
- 通用选择器(*) * { }
- 元素(类型)选择器 p { }
- 类选择器 .class { }
- 属性选择器
- 伪类
- ID 选择器 #id { }
- 内联样式 <p style="width:10px">
3、!important
如,color:blue !important; 其覆盖CSS中任何其他的声明, 其与优先级无关, 使用 !important 不是一个好习惯,它改变了你样式表本来的级联规则,从而使其难以调试。
一些经验法则:
- 要优化考虑使用样式规则的优先级来解决问题而不是
!important - 只在需要覆盖全站或外部 css(例如引用的 ExtJs 或者 YUI )的特定页面中使用
!important - 永远不要在全站范围的 css 上使用
!important - 永远不要在你的插件中使用
!important
4、样式继承性
重复的属性用优先级高的,不存在的直接继承过来,如
外部样式表
h3
{
color:red;
text-align:left;
font-size:8pt;
}
内部样式表
h3
{
text-align:right;
font-size:20pt;
}
最终样式
/*从外部样式表继承*/
color:red;
/*以下两个,内部样式表中重复存在,被其取代*/
text-align:right;
font-size:20pt;
5、选择器 分组 和 层级嵌套
分组:减少重复的样式书写,一样的写在一起,用,隔开
/*重复的 color */
h1
{
color:green;
}
h2
{
color:green;
}
p
{
color:green;
}
分组写法
h1,h2,p
{
color:green;
}
层级嵌套: 选择器内部的选择器的样式
先举个复杂的例子
定义了root-wrap样式的元素的form子元素下的定义了show-hide-body样式的元素下的定义了.scroll-contaier元素下的ol标签的所有li标签的样式
.root-wrap form .show-hide-body .scroll-contaier ol li {
padding-top: 3px;
padding-bottom: 5px;
box-sizing: border-box;
}
又如:为所有class="marked"元素内的p元素指定一个样式
p
{
color:blue;
text-align:center;
}
.marked
{
background-color:red;
}
/*嵌套写法*/
.marked p
{
color:white;
}
对应的html
<body>
<p>这个段落是蓝色文本,居中对齐。</p>
<!-- 先找到marked-->
<div class="marked">
<!-- 再找到其子元素p-->
<p>这个段落不是蓝色文本。</p>
</div>
<p>所有 class="marked"元素内的 p 元素指定一个样式,但有不同的文本颜色。
</p>
</body>
6、样式其他写法
元素同时写了两个样式
<p class="root-wrap actives">
下边.root-wrap和.actives之间没空格
.root-wrap.actives {
border: 1px solid #00a6c9 ;
}
又如元素选择器与类名结合
<img class="normal" src="logocss.gif" width="95" height="84" />
之间没空格
img.normal
{
height:auto;
}
7、组合选择器
- 后代选取器(以空格分隔 div p { background-color:yellow; }) div下的所有p,可能不是直接子p元素
- 子元素选择器(以大于号分隔 div>p { background-color:yellow; })div下直接子p元素
- 相邻兄弟选择器(以加号分隔div+p { background-color:yellow; })
- 普通兄弟选择器(以破折号分隔div~p { background-color:yellow; })
8、属性选择器
有属性的元素
[title]
{
color:blue;
}
<h1 title="Hello world">Hello world</h1>
指定属性值
[title=runoob]
{
border:5px solid green;
}
<img title="runoob" src="logo.png" width="270" height="50" />
包含指定值 |=
[lang|=en]
{
color:blue;
}
<p lang="en">Hello!</p>
<p lang="en-us">Hi!</p>
<p lang="en-gb">Ello!</p>
指定表单元素
input[type="text"]
{
width:150px;
display:block;
margin-bottom:10px;
background-color:yellow;
}
CSS 基础 优先级 选择器 继承的更多相关文章
- CSS的优先级和继承问题
CSS的优先级和继承问题 ★CSS的冲突,即优先级 CSS本身的设置可以同时应用多个样式在同一个元素,此时样式之间可能出现冲突而达不到用户所想要的效果. ★解决CSS冲突的优先级规则: ● CSS层叠 ...
- HTML&CSS基础-样式的继承
HTML&CSS基础-样式的继承 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HTML源代码 <!DOCTYPE html> <html> & ...
- HTML&CSS基础-属性选择器
HTML&CSS基础-属性选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html源代码 <!DOCTYPE html> <html> & ...
- HTML&CSS基础-常用选择器
HTML&CSS基础-常用选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html源代码 <!DOCTYPE html> <html> & ...
- CSS基础和选择器
什么是CSS? CSS是指层叠样式表(Cascading Style Sheets),样式定义如何显示HTML元素,样式通常又会存在于样式表中.也就是说把HTML元素的样式都统一收集起来写在一个地方或 ...
- 李洪强和你一起学习前端之(3)Css基础和选择器
大家好! 经过了前面的学习,是不是对前端的学习有了初步的了解.虽然我之前有iOS开发的经验,现在接触一门新的语言,对我来说 有一定的优势,但是一门技术对于谁来说都是公平的,我承认,我在接触新知识的时候 ...
- CSS基础--属性选择器、伪类选择器
属性选择器 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- CSS基础及选择器
CSS层叠样式表与表相分离.常用CSS2和CSS3. HTML引入CSS 1.行内样式 <div style="color:red"></div> 2.内部 ...
- CSS基础-层叠与继承
继承 一些属性可以被继承,一些不可以. 一般来说,字体颜色.字体大小会被继承,关于形状的如 padding .border .margin.width等就不会被继承.哪些属性属于默认继承很大程度上是由 ...
随机推荐
- 探索未知种族之osg类生物---呼吸分解之事件循环一
事件循环和更新循环 终于到了我们嘴里经常念叨的事件循环.更新循环以及渲染循环了.首先我们来区分一下事件循环和渲染循环,他们两个首先是两个不同顺序执行的过程,我们有时候会用到任意node的updateC ...
- Python代码运行应该注意哪些问题?
Python作为近年来热度一度高涨的编程语言,非常受广大程序员的喜爱,用过之后发现这门语言有很多特点.比如作为一门动态语言它的变量是信手拈来就可以用的,甚至比js还简单,也没有编程语言常见的大括号包含 ...
- CH#17C 舞动的夜晚
原题链接 即求二分图的不可行边数量,因为不保证是完备匹配,所以需要通过网络流求出任意一组最大匹配,并建立新图判断. 建新图:对于跑完网络流的图上已经匹配的边,建立反边:对于没有匹配的边,建立正边(图只 ...
- python——处理xls表格
因为工作需要,现有一个运营商导出的xls固定电话话费账单. 账单比较详细,而我最终需要的数据只有那个号码这个月用了多少话费的统计结果. 当年没有好好学office,以致于无从下手.泪奔/(ㄒoㄒ)/~ ...
- firefox 之 event兼容写法
event 在 IE 和 FF(Firefox) 中是不兼容的,IE 中可以直接使用 event 对象,而 FF 中则不可以,解决方法之一如下: var event = window.event || ...
- IOS初级:delegate的使用
delegate的应用场景:view中的事件,controller做处理(如刷新view中元素等). storyboard的textfield实现点击return实现收起键盘. 首先在ViewCont ...
- 2017/2/14springmvc基础学习
一:核心类与接口 DispatcherServlet :前置控制器 ,HandlerMapping:请求处理接口 HandlerMapping:接口实现类 ViewResolver接口的实现类Url ...
- 《团队-爬取豆瓣电影TOP250-设计文档》
搭建环境: 1.安装python3.4 2.安装pycharm集成开发环境 3.安装Git for Windows 4.安装python第三方包 bs4开发阶段: 1.团队成员申请并配置github账 ...
- rails 新建user的phonenumber字段
1.新建字段 //rails g migration add_字段名_to_表名 字段名:字段类型 rails g migration add_title_to_contents title:stri ...
- Linux 目录说解
目录 1.树状目录结构图 2./目录 3./etc/目录 4./usr/目录 5./var/目录 6./proc/目录 7./dev/目录 该文章主要来自于网络进行整理. 目录结构参考地址: http ...