学习笔记 css3--选择器&新增颜色模式&文本相关

Css3 选择器 --属性选择器

E[attr]只使用属性名,但没有确定任何属性值,
E[attr="value"]指定属性名,并指定了该属性的属性值
E[attr~="value"]指定属性名,并且具有属性值,此属性值是一个词列表,并且以空格隔开,其中词列表中包含了一个value词,而且等号前面的“〜”不能不写 E[attr^="value"]指定了属性名,并且有属性值,属性值是以value开头的(注意:这个方法会把attr的属性值当做一个整体字符串处理,即如果有多个值,中间用空格隔开,空格也算作'value的一部分') 
E[attr$="value"]指定了属性名,并且有属性值,而且属性值是以value结束的(注意:这个方法会把attr的属性值当做一个整体字符串处理,即如果有多个值,中间用空格隔开,空格也算作'value的一部分') 
E[attr*="value"]指定了属性名,并且有属性值,而且属值中包含了value
E[attr|="value"]指定了属性名,并且属性值是value或者以“value-”开头的值(比如说zh-cn)

 <!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
li{height:30px; border:1px solid #000;margin:5px 0;}
li[name]{ background:red;}
li[name = 'title1']{background:black}
li[name ~= 'val4']{background:pink}
li[name ^= 'val3']{background:gray}
li[name $= ' val4']{background:green}
li[name *= '1val3']{background:blue}
li[name |= 'v']{background:yellow}
</style>
</head>
<body>
<ol>
<li></li>
<li name="val1"></li>
<li></li>
<li name="val2"></li>
<li></li>
<li name='title1'></li>
<li></li>
<li name='val3 val4'></li>
<li></li>
<li name='val3val4'></li>
<li></li>
<li name='val1val3val4'></li>
<li></li>
<li name='v-3'></li>
<li></li>
<li name='v'></li>
</ol>
</body>
</html>

 Css3 选择器 –结构性伪类

E:nth-child(n) 表示E父元素中的第n个字节点 
  p:nth-child(odd){background:red}/*匹配奇数行*/ 
  p:nth-child(even){background:red}/*匹配偶数行*/ 
  p:nth-child(2n){background:red}

注意:n起始是0;第一个子元素的下标是1;

E:nth-last-child(n) 表示E父元素中的第n个字节点,从后向前计算
E:nth-of-type(n) 表示E父元素中的第n个字节点,且类型为E
E:nth-last-of-type(n)表示E父元素中的第n个字节点,且类型为E,从后向前计算
E:empty 表示E元素中没有子节点。注意:子节点包含文本节点
E:first-child 表示E元素中的第一个子节点 
E:last-child 表示E元素中的最后一个子节点
E:first-of-type 表示E父元素中的第一个子节点且节点类型是E的
E:last-of-type 表示E父元素中的最后一个子节点且节点类型是E的
E:only-child表示E的父元素中只有个一个子节点,且子节点的类型为E。注意:子节点不包含文本节点
E:only-of-type 表示E的父元素中子节点E的数量有且只有一个。注意:子节点不包含文本节点

 <!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
li,p{height:30px; border:1px solid #000;margin:5px 0;}
li:nth-child(2n+1){background: red}
li:nth-last-child(2){background: yellow}
li:nth-of-type(3){background:grey}
li:empty{background: black;}
li:first-child{background: blue;}
li:last-child{background: blue;}
p:first-of-type{background: green;}
div div:last-of-type{background:green;}
p span:only-child{background:pink;}
strong:only-of-type{background:orange}
</style>
</head>
<body>
<ol>
<li>&nbsp;</li>
<li>&nbsp;</li>
<li>&nbsp;</li>
<li></li>
<li>&nbsp;</li>
<li>&nbsp;</li>
<li>&nbsp;</li>
<li>&nbsp;</li>
<li>&nbsp;</li>
<li>&nbsp;</li>
</ol>
<div> <p><span>1</span></p>
<div>div</div>
<p><span></span></p>
<div>div</div>
<p><span>p3</span></p>
<p><span></span></p>
<p></p>
<div>div</div>
<strong>strong</strong>
</div>
</body>
</html>

 Css3 选择器 --伪类

E:target 表示当前的URL片段的元素类型,这个元素必须是E
E:disabled 表示不可点击的表单控件
E:enabled 表示可点击的表单控件
E:checked 表示已选中的checkbox或radio
E:first-line 表示E元素中的第一行
E:first-letter 表示E元素中的第一个字符
E::selection表示E元素在用户选中文字时
E::before 生成内容在E元素前
E::after 生成内容在E元素后
E:not(s) 表示E元素不被匹配 (s可以是css基本的选择器,例如#id,.class,tag)
E~F表示E元素毗邻的F元素

新增颜色模式

rgba

r Red     红 0-255

g Green 绿 0-255

b Blue   蓝 0-255

a Alpha 透明 0-1

Hsl(基本用不到,因为太专业了。。)

H Hue 色调 任意数值

S saturation 饱和度

0%-100%

L Lightness 亮度 0%-100%

文字阴影

text-shadow:x y blur color, …

参数  x 横向偏移

y 纵向偏移

blur 模糊距离

color 阴影颜色

文本阴影如果加很多层,会很卡很卡很卡

阴影叠加 text-shadow:2px 2px 0px red, 2px 2px 4px green;
先渲染后面的,再渲染前面的

文字相关内容

文字描边
-webkit-text-stroke:宽度 颜色

新增文本功能

Direction 定义文字排列方式(全兼容)

Rtl 从右向左排列

Ltr 从右向左排列

注意要配合unicode-bidi 一块使用

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
p{ width:400px; border:1px solid #000;direction:rtl;unicode-bidi:bidi-override;}
</style>
</head>
<body>
<p>独家:美国与数千公司合作获取情报</p>
</body>
</html>

Text-overflow 定义省略文本的处理方式

clip 无省略号

Ellipsis 省略号 (注意配合overflow:hidden和white-space:nowrap一块使用)

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style>
p{ width:300px;border:1px solid #000; line-height:30px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
</style>
</head>
<body>
<p>元素不会对双向算法打开附加的一层嵌套。对于行内元素,顺序的隐式重排会跨元素边界进行。</p>
</body>
</html>

自定义文字

格式

@font-face {
font-family: ‘miaov';
src: url('111-webfont.eot');
src: url('111-webfont.eot?#iefix') format('embedded-opentype'),
url('111-webfont.woff') format('woff'),
url('111-webfont.ttf') format('truetype'),
url('111-webfont.svg#untitledregular') format('svg');
font-weight: normal;
font-style: normal; }

转换字体格式生成兼容代码
http://www.fontsquirrel.com/fontface/generator

上一篇:http 请求类


下一篇:ExtJS 的一些技巧与问题