初始CSS
来源:互联网 发布:淘宝买家评价多久清空 编辑:程序博客网 时间:2024/05/20 07:32
, 前几篇介绍的HTML只是比较常用的一部分。其他的还需自行了解。
sublime里面的emmet语法快捷键,百度云地址:http://pan.baidu.com/s/1eR1Frk2 密码:fdnp
emmet语法加快了代码的书写。比如在sublime里面输入: .box1>a[#]{$}*4
会得到
<div class="box1"> <a href="#">1</a> <a href="#">2</a> <a href="#">3</a> <a href="#">4</a> </div>
一、CSS的整体感知
css是cascading style sheet 层叠式样式表的简写。它为标签提供样式,呈现在网页上。
例如下面定义一个div,没有设置宽高,在网页中什么也不显示。所有需要CSS设置标签样式。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <div class="nav"></div></body></html>
CSS样式引入有三种:嵌入样式表、链接外部样式表、内嵌样式(优先级最高)。
嵌入样式表:用<style></style>
标签对。
链接外部样式表:用link标签引入外部样式文件。文件以 .css结尾。
内嵌样式:<li style="font-size: large;color: red" >Bigbang</li>
引入位置:<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href=""> href为文件路径。
<style></style>
</head>
二、选择器
想要设置一个标签属性,肯定要选择中它。
1.标签选择器
标签选择器是选择页面中所有的同类标签。
比如下面是设置了页面中所有div的宽度和高度,背景颜色。
<style>div { width: 100px; emmet语法:w100px再tab height: 100px; background-color: #000; }</style>
2.id选择器
id就像人的身份证一样,是唯一的。
#banner { width: 100px; height: 100px; background-color: #000; } 只选中id为banner的div<body> <div id="banner"></div></body>
3.类选择器
一个标签可以有多个class,中间用空格隔开。一个class也可以被多个标签拥有。
.banner { width: 100px; height: 100px; background-color: #000; } 只选中class(类名)为banner的div<body> <div class="banner tab"></div></body>
4.后代选择器
<body> <div class="div1"> <p>我是p1</p> <div> <p>我是p2</p> </div> </div></body>
直接后代选择器:.div1>p 选择的是.div1的直接后代<p>我是p1</p>
,直接后代为div的儿子而不是孙子辈。
<style> .div1>p { color: red; } </style>
后代选择器:.div1 p 选择的是.div1的所有后代p
<style> .div1 p { color: red; } </style>
5.交集选择器
交集选择器,我们一般都是以标签名开头。
eg: div.special {} 该标签要同时满足是div而且类名是special的才可以选中。div.special中间没有空格
6.并集选择器
eg: div, p {} 选中所有div和p,并集选择器通常用在设置两个标签相同样式时。
7.通配符
*{
效率不高,如果页面上的标签越多,效率越低,所以页面上不能出现这个选择器。
}
8.相邻兄弟选择器
选择离自己最近的兄弟
9.属性选择器
为具有某个属性的HTML元素定义样式。(CSS3介绍)
上面是CSS中的基本选择器,CSS3新增了许多灵活查找元素的方法,极大的提高了查找元素的效率和精准度。以后会一一介绍。
三、CSS的继承性和层叠性
继承性:
有一些属性,当给自己设置的时候,自己的后代都继承上了,这个就是继承性。
color、 text-开头的、line-开头的、font-开头的。这些都是可以继承的。
这些关于文字样式的,都能够继承; 所有关于盒子的、定位的、布局的属性都不能继承。
层叠性:
层叠性:就是css处理冲突的能力。这个很重要。
当对同一个标签设置样式时,会因为标签选择器权重的问题,一些选择器会被层叠掉。
权重计算:id的数量,类的数量,标签的数量
先比较id,有id的优先,再看数量,数量一样;再比较class,依次类推。
特别:在计算权重之前,要看看是不是选中了要设置的那个标签,如果没有,则权重为0。
当所有都没有选中,那么有一个就近原则:谁描述的近,听谁的。
并集选择器要分开计算:
权重问题的深入:
同一个标签,携带了多个类名,有冲突:
!important标记
给一个属性提高权重。这个属性的权重就是无穷大。
!important需要强调3点:
1) !important提升的是一个属性,而不是一个选择器
2) !important无法提升继承的权重,该是0还是0
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> div { color: red!important; } p { color: green; } </style></head><body> <div> <p class="p1" id="p2">我是什么颜色?</p> </div></body></html>
3)!important不影响就近原则
如果大家都是继承来的(没有选中,权重为0),按理说应该按照“就近原则”。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> div { color: red!important; } ul { color: green; } </style></head><body> <div> <ul> <p class="p1" id="p2">我是什么颜色?</p> </ul> </div></body></html>
- CSS初始
- 初始CSS
- 初始CSS+DIV
- JQueryUi 初始css配置
- 移动端初始css设置
- CSS初始之踩坑
- CSS学习篇之——初始CSS+DIV
- 初始
- 初始
- 初始
- 初始
- 初始
- 初始
- 初始
- 初始
- 初始
- 初始
- 初始HTTP和CSS第一篇span的练习
- 最大二叉搜索子树 后序遍历
- 第八章 拦截器机制(一) 拦截器介绍
- 蜕变的Judy年中总结
- Vitya and Strange Lesson(01字典树)
- 快速排序-java实现
- 初始CSS
- Java中的回车(\r)和换行(\n)
- 【01】vue.js — 简析入门
- Jmeter实现百分比业务比例
- 用Virtual User Generator 录制
- 京东面试题分析
- 命令模式
- JupyterNotebook配置
- 逆向入门--第一次的HelloWorld