子选择器和后代选择器写法是一样的吗?

子选择器和后代选择器写法是一样的吗?,第1张

①写法不一样:

后代选择器的标识为:空格

如:ul li{width:150px} 【ul和li之间用空格隔开】

子选择器的标识为:>

如:ul>li{width:150px}【ul和li之间用>隔开】

②功能不一样:

后代选择器是选择ul包围的 所以元素中的所有li元素,包括子元素、孙元素、曾孙元素等等等。

子选择器仅仅选择ul包围的 子元素中的 li元素,不包括孙元素、曾孙元素等等等。

③兼容性不一样:

后代选择器是所有浏览器都兼容的,都可使用。

子选择器在IE6、IE7、IE8中则是不被支持的选择器,各自bug!

主要应用于声明不同优先级、不同适用范围的样式。

【HTML选择器】

三者中优先级最低的选择器。

用于最基础样式的定义,比如定义页面整体的字体(给body定义font),链接的样式(给a定义颜色、下划线等属性),列表项的符号样式(给li定义list-style),段落的间距(给p定义padding或者margin)等等。 这种声明优先级最低。

举例:

body, table td { font:normal 12px/1.8 Arial}

a { color:#ff0text-decoration:none}

a:hover { color:#ff6}

p { text-indent:2em}

【类选择器】

用于来定义一类可以在同一个页面内重复利用的样式。 如比较常用的.clearfix(一般是用于清除浮动),或者自己定义的用于新闻列表的样式,详细的写好链接、列表、边框以及背景等属性,有些人还会习惯把一些常用的属性作为一个类。

举例:

.clearfix { clear:bothcontent:.height:0overflow:hiddenzoom:1}

.fl { float:left}

.red { color:red}

.box { border:1px solid #ccc}

.box li { padding-left:15pxbackground:url(arrow.png) 5px center no-repeat }

【ID选择器】

三者中优先级最高的选择器。

一般用于一个页面中仅出现一次的容器,也常常作为js的接口。例如页面上的导航条(#nav)、页脚(#footer)、侧边栏(#sider)、主要内容(#mainBody)等等。

举例:

#nav { padding:10px 0background:url(../images/nav.png) 0 -124px repeat-x}

#footer { border-top:3px solid #630}

#sider { float:right: width:298pxborder:1px solid #ccc}

满意请采纳。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7033788.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-31
下一篇 2023-03-31

发表评论

登录后才能评论

评论列表(0条)

保存