CSS3常用知识点(一)

1 css3选择器

1.1 属性选择器

/* E[attr~=val] 表示的一个单独的属性值 这个属性值是以空格分隔的*/
.attr2 a[class~="kawa"] {
//TODO
}
/* E[attr|=val] 表示的要么一个单独的属性值 要么这个属性值是以"-"分隔的*/
.attr3 a[class|="kawa"] {
//TODO
}
/* E[attr*=val] 表示的属性值里包含val字符并且在“任意”位置 */
.attr4 a[class*="kawa"] {
//TODO
}
/* E[attr^=val] 表示的属性值里包含val字符并且在“开始”位置 */
.attr5 a[class^="kawa"] {
//TODO
}
/* E[attr$=val] 表示的属性值里包含val字符并且在“结束”位置 */
.attr6 a[class$="kawa"] {
//TODO
}

1.2 伪类选择器

a:link {color: #FF0000} /* 未访问的链接 */
a:visited {color: #00FF00} /* 已访问的链接 */
a:hover {color: #FF00FF} /* 鼠标移动到链接上 */
a:active {color: #0000FF} /* 选定的链接 */

1.3 伪元素选择器

:first-letter /*向文本的第一个字母添加特殊样式。*/
:first-line /*向文本的首行添加特殊样式。*/
:before /*在元素之前添加内容。*/
:after /*在元素之后添加内容。*/

1.4 结构性伪类选择器

:root /*样式绑定到页面艮元素中*/
:not /*对某个结构元素使用样式,但想排除其子元素的样式*/
:empty/*当元素为空时使用的样式*/
:target/*对页面中某个target元素指定样式,该样式只在用户点击了页面的超链接起作用*/

2 CSS3布局

2.1 css3多栏布局

2.1.1 column-count 分多少栏展示

column-count: 3;
-webkit-column-count: 3;
-moz-column-count: 3;
/*分成3栏展示*/

2.1.2 column-width 每一栏以宽度多少来展示

column-width: 200px;
-webkit-column-width: 200px;
-moz-column-width: 200px;
/*分栏展示每一栏宽度200px*/

2.1.3 column-gap 指定栏目与栏目之间的距离

column-column-gap: 10px;
-webkit-column-gap: 10px;
-moz-column-gap: 10px;

2.1.4 column-rule栏目与栏目之间增加一条分隔线

column-column-rule: 1px solid #cccccc;
-webkit-column-rule: 1px solid #cccccc;
-moz-column-rule: 1px solid #cccccc;

2.2 css3盒布局

display: -moz-box; 
display: -webkit-box; 
/*比css里面用浮动定位布局更简洁*/

2.3 css3弹性盒布局

2.3.1 自适应弹性盒布局

-webkit-box-flex:1;
-moz-box-flex:1;
/*兄弟元素中值越大,占百分比越大*/

2.3.2 改变元素显示的顺序

-webkit-box-ordinal-group:1;
-moz-box-ordinal-group:1;
/*值越大越靠近左边或者上边*/

2.3.3 改变元素的排列方向

-webkit-box-orient:vertical;
-moz-box-orient:vertical;
/*水平从左向右排列*/

-webkit-box-orient:horizontal;
-moz-box-orient:horizontal;
/*垂直从上向下排列*/

2.3.4 指定内容的对齐方式

/*水平方向的对其方式*/
-webkit-box-align:start;-moz-box-align:start;/*内容左对齐*/
-webkit-box-align:center;-moz-box-align:center;/*内容中对齐*/
-webkit-box-align:end;-moz-box-align:end;/*内容右对齐*/
/*垂直方向的对齐方式*/
-webkit-box-pack:start;-moz-box-pack:start;/*内容上对齐*/
-webkit-box-pack:center;-moz-box-pack:center;/*内容中对齐*/
-webkit-box-pack:end;-moz-box-pack:end;/*内容下对齐*/

2.4 Media Queries
根据不同浏览器窗口大小加载不同的css样式

@media screen and (min-width: 1000px) {
//TODO
}
@media screen and (min-width: 640px) and (max-width: 999px) {
//TODO
}
@media screen and (max-width: 639px) {
//TODO
}

3 几个兼容ie9一下浏览器js

3.1 html5shiv.min.js /可以在IE9及一下版本创建main,header,footer等HTML5元素/
3.2 respond.min.js /让IE6 IE7 IE8支持CSS3 Media Query/
3.3 seletivizr.js /提供大量IE不支持的CSS选择器和属性,包括所有的last-child选择器/
3.4 判断IE的方法
<!--[if IE 7 ]>IE6<![endif]-->
<!--[if IE 7 ]>IE7<![endif]-->
<!--[if IE 8 ]>IE8<![endif]-->
<!--[if IE 9 ]>IE9<![endif]-->
posted @ 2017-06-27 22:18  Brian_Huang  阅读(346)  评论(0编辑  收藏  举报