CSS3的使用
来源:互联网 发布:c语言求1000以内素数 编辑:程序博客网 时间:2024/06/07 16:17
转载请标明出处:http://blog.csdn.net/wu_wxc/article/details/50927867
本文出自【吴孝城的CSDN博客】
CSS全称:层叠样式表(Cascading Style Sheets),就是一种用来改变内容外观的表现,例如文字的大小、颜色,或是一些背景图片,边框等等
在CSS中,
注释用
/*这里是要注释的语句*/来注释
使用样式可以编写一次代码,多个地方使用
样式由“选择符”和“声明”组成,
声明由属性和值组成
选择符又称选择器,可以自己取名字
声明是在“{}”中的,属性和值之间用“:”分隔,有多条声明时,用“;”
如:
p{font-size:10px; color: red;font-family: "微软雅黑";font-weight: bold;font-style: italic;text-decoration: underline;text-decoration: line-through;text-indent: 2em;line-height: 20px;letter-spacing: 20px;word-spacing: 20px;text-align: center;}
px为像素
颜色由RGB,也就是R(red)、G(green)、B(blue)三原色组成
每一项取值0~255,也就是0%~100%
如:
h1{color: rgb(10%,20%,50%);}也可将每一项的值转为十六进制00~ff
如:
h1{color: #00ff55;}font-weight: bold; 粗体
font-style: italic; 斜体
text-decoration: underline; 下划线
text-decoration: line-through; 删除线
text-indent: 2em; 缩进
line-height: 20px; 行间距(行高),不许使用负值
letter-spacing: 20px; 文字或字母间距
word-spacing: 20px; 单词间距
text-align: center; 块元素中的文字或图片剧中
元素内容与边框用padding-top:20px;之类设置,当只写padding:20px,20px,20px,20px;时,为上,右,下,左
元素与其他元素之间的边界用margin-top:20px之类来设置,当只写margin:20px,20px,20px,20px;时,为上,右,下,左
font-weight: ;属性设置文本的精细
其值有:
normal:默认值,定义标准字符
bold:粗体字符
bolder:更粗的字符
lighter:定义更细的字符
100~900:400等normal,700等bold
inherit:规定应该从父元素继承字体的粗细
white-space:;属性设置如何处理元素内的空白
其值有:
normal:默认,空白会被浏览器忽略
pre:空白会被浏览器保留,其行为方式类似Html中的 <pre> 标签
nowrap:文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止
pre-wrap:保留空白符序列,但是正常地进行换行
pre-line:合并空白符序列,但是保留换行符
in-herit:规定应该从父元素继承 white-space 属性的值
visibility: ;设置元素是否可见
其值有:
visible:默认值,元素是可见的
hidden:元素不可见
collapse:当在表格元素中使用时,此值可删除一行或一列,但是它不会影响表格的布局。被行或列占据的空间会留给其他内容使用。如果此值被用在其他的元素上,会呈现为 "hidden"
inherit:规定应该从父元素继承 visibility 属性的值
overflow: ; 属性规定当内容溢出元素框时发生的事情
其值有:
visible:默认值。内容不会被修剪,会呈现在元素框之外
hidden:内容会被修剪,并且其余内容是不可见的
scroll:内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容
auto:处适配,如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容
inherit:规定应该从父元素继承 overflow 属性的值
最后的";"可以不要,建议写上,方便以后修改添加
CSS样式的使用可分为三种:内联式、嵌入式、外部式
内联式:就是把CSS样式代码直接写在Html标签中
<p style="font-size:20px; color:red">这里的文字大小将是20px,颜色为红色</p>
嵌入式:必须写在<style></style>之间,style一般写在<head></head>之间
如:
<style type="text/css">p{color: red;}</style>
style="text/css"是告诉浏览器这里面的文本内容(text)要当层叠样式(css)来解析
外部式:也称为外联式,就是把CSS代码单独写在一个外部文件里,文件扩展名为“.css”,使用<link>标签将css样式链接到Html文件内,
如:
<link href="my.css" rel="stylesheet" type="text/css" />其中rel="stylesheet" type="text/css"是固定写法,不可修改
一般写在<head></head>标签中
三种样式写法的优先级:内联式>嵌入式>外部式
CSS选择器:标签选择器、类选择器、ID选择器、子选择器、通用选择器、伪类选择符、分组选择符
标签选择器:就是Html中的标签,如<html>、<body>、<a>、<p>、、<h1>、<img>等
类选择器:以英文“.”开头,名字任意,中文除外
如:
.myStyle{color: red;}
使用时用class="类选择器名"
如
<span class="mystyle">这里的文字为红色</span>
ID选择器:以"#"开头,名字任意,中文除外
如:
#myStyle{color: red;}使用时用id="ID选择器名"
如
<span id="myStyle">这里的文字为红色</span>类选择器和ID选择器的区别在ID选择器在一个Html文档中只能被使用一次,而类选择器可以被多次使用
类选择器可以为一个元素设置多个样式,而ID选择器不行
如:
.stress{color: green;}.bigSize{font-size: 20px;}使用:
<span class="stress bigSize">字体为绿色,20px</span>
而不能用ID
如:
#stressID{color: green;}#bigSizeID{font-size: 20px;}
<span id="stressID bigSizeID">这个用法是错的</span>子选择器:使用">"符号来指定标签元素的第一代子元素拥有样式
如:
.first>span{color: red;}使用:
<p class="first">这个没有<span>第一个span里字体为红色<span>这是第二代,所以没有独立的样式</span><span>这也是第一代span,也有样式</span></span></p>
包含(后代)选择器:就是在多个选择器之间加空格,
如:
.first span{color: red;}包含选择器与子选择器的区别:子选择器只作用于第一代后代,而包含选择器作用于所有后代
如:
.first li{border: 1px solid red;}
<ul class="first"><li>一</li><li>二</li><li>三</li></ul>
通用行径器:使用"*"来指定,功能最强大,作用于所有的html标签
如:
*{color: red;}这样html中所有的文字都是红色的
伪类选择符:允许给html不存在的标签设置样式,如一个链接,在鼠标划过时,链接被点击,已选中等的颜色的改变
如:
/* 鼠标划过*/a:hover{color: red;}/* 已选中的链接*/a:active{color: #0000ff;}使用:
<a href="http://www.dcloud.io/">HBuilder</a>分组选择符:想在多个标签设置同一样式时,可以用分组选择符,
如:
h1, h2{color: red;}这样h1和h2标签的字体都是红色
CSS的继承性:某些样式具有继承性,有些没有,如设置h1标签的字体是红色,那么h1标签下包括子元素文本都红色,像border这个标签就不具有继承性
权值:当一个元素使用了多个CSS样式时,到底使用哪个样式就要看它们的权值了,哪个权值高就用哪个
标签权值:1
类选择符权值:10
ID选择符权值:100
p{color: green;}/*权值1*/p span{color: white;}/*权值1+1=2*/.weight{color: red;}/*权值10*/p span .weight{color: yellow;}/*权值1+1+10=12*/#selete .weight p{color: blue;}/*权值100+10+1=111*/继承的权值为0.1
当权值相同时,样式会用后面的覆盖前面的
如:
p{color: red;}p{color: yellow;}
<p>文字为黄色</p>
如果我们想权值相同的样式不被覆盖,可以使用"!important",来设置,注意要写在";"之前
如:
p{color: blue !important;}p{color: red;}
<p class="first">这时显示的内容就是蓝色</p>
CSS3新增的内容
属性选择器
也是写在style里
[id*=div]{color: red;}指ID元素包含div的就会采用样式,如id="mdivy"可换成class
[id^=div]{color: red;}指id=""里的首字符为div的会采用,如id="divmy"可换成class
[id$=div]{color: red;}指id=""里结束字符包含div的会采用,如id="mydiv"可换成class
如:
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style type="text/css">[id$="div"]{color: red;}</style></head><body><div id="div1">无样式</div><div id="1div">有样式</div><div id="my">无样式</div></body></html>
结构性伪类选择器:
允许开发者根据文档的结构来指定元素的样式
first-line 就是在使用该样式的区域内的第一行使用该样式
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>p:first-line{color: red;}</style></head><body><p>第一行有样式<br />第二行没有样式</p></body></html>
first-letter
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>p:first-letter{color: red;}</style></head><body><p>第一个有样式<br />第二行没有样式</p></body></html>
如果是字母,则第一个字母有样式
before
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>p:before{content: "添加在前面";color: red;}</style></head><body><p>测试用的</p></body></html>
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>p:after{content: "添加在后面";color: red;}</style></head><body><p>测试用的</p></body></html>
root:根元素,会对整个页面产生影响,如果使用了body设置样式,那么body就只对内容部分添加样式,而root会对整个页面添加样式
<style>:root{background: blue;}</style>not:排除功能
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>div *:not(h1){color: blue;}</style></head><body><div><h1>h1i被排除,没有样式</h1><h2>h2有样式</h2></div></body></html>
empty:在没有内容的区域将会添加样式
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>:empty{background-color: blue;}</style></head><body><table border="1"><tr><td></td><td>无样式</td></tr><tr><td>无样式</td><td></td></tr></table></body></html>
target:是设置页内跳转后跳转到的内容的样式
:target{}first-child、last-child、nth-child()、nth-last-child()
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>/*第一个子标签*/li:first-child{color: red;}/*最后一个子标签*/li:last-child{background-color: greenyellow;}/*指定位置的标签*/li:nth-child(3){background-color: #19F8F8;}/*从后面数指定位置的标签*/li:nth-last-child(2){color: blue;}</style></head><body><ul><li>元素一</li><li>元素二</li><li>元素三</li><li>元素四</li><li>元素五</li><li>元素六</li></ul></body></html>
还有一个奇数和偶数的标签
例如:
/*even是正数,odd是奇数*//*正数偶数的li列表会有该样式*/li:nth-child(even){}/*倒数偶数的li列表会有该样式*/li:nth-last-child(even){}/*正数奇数的li列表会有该样式*/li:nth-child(odd){}/*倒数奇数的li列表会有该样式*/li:nth-last-child(odd){}添加类型的标签:nth-of-type()、nth-last-of-type(),添加odd或even来选择
这种选择器会根据类型来选择,如只选择h1的偶数位。nth-of-type(even)
nth-child()
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><!-- nth-child() 括号里的值为一组多少项*n+这组中的第几项,最后一个如3n+3可以写成3n --><style>li:nth-child(3n+1){background-color: greenyellow;}li:nth-child(3n+2){background-color: wheat;}li:nth-child(3n+3){background-color: cadetblue;}</style></head><body><ul><li>组一1</li><li>组一2</li><li>组一3</li><li>组二1</li><li>组二2</li><li>组二3</li><li>组三1</li><li>组三2</li><li>组三3</li></ul></body></html>
only-child:当只有一个子元素时使用
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>li:only-child{color: red;}</style></head><body><ul><li>一个元素</li></ul><ul><li>一个元素</li></ul><ul><li>两个元素</li><li>两个元素</li></ul></body></html><strong></strong>
通用兄弟元素选择器
<!DOCTYPE html><html><head><meta charset="utf-8" /><title></title><style>/*这里的div是子元素div,用“~”隔开为兄弟元素h1*/div ~ h1{color: red;}</style></head><body><div><div><h1>元素</h1><h1>元素</h1></div><h1>元素</h1><h1>元素</h1><h1>元素</h1></div></body></html>
可用CSS对文字添加阴影
text-shadow:length length length color
第一个参数:正数是向右,负数是向左,px
第二个参数:正数是向下,负数是向上,px
第三个参数:模糊程度,值越大越模糊,px
第四个参数:阴影颜色
可用","分隔开设置多重阴影
- 不常使用的css3
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3 transition的使用
- CSS3的使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- CSS3的calc()使用
- Swift柯里化(Currying)
- android_设备管理员
- Sublime Text3 C++ 设置
- 用jquery实现Tab切换菜单
- MentoCarlo算法求PI值_Java实现
- CSS3的使用
- 306. Additive Number | Java最短代码实现
- 306. Additive Number | Java最短代码实现
- Eric安装配置和实例
- UITextField常用属性:文本框样式、文字样式、键盘样式、左右视图样式、清除按钮设置等
- 如何使用Ssms链接sqlserver数据库
- 前辈感悟
- linearLayout设置分割线
- 23种设计模式全解析