当前位置 : 主页 > 网站建设 > 正文

CSS清除浮动的方法与CSS选择器

原创

重庆seo2017-02-15 23:11:36阅读()CSSA+ / A-

CSS清除浮动的方法与CSS选择器

       DIV+CSS是网站建设的主要设计形式,掌握并不难,达到同样效果,代码写得越少越好,这完全是靠个人敲代码敲出来经验。重庆SEO前面写过一篇骨灰级极简主义代码优化,简单介绍了极简代码的基本设计要素。下面举例最少的代码实现清除浮动,最常用的是主导航。给出两种清除浮动形式如下:

<style>
 .clear{clear:both;display:block;width:0;height:0;margin:0;border:0}
 .clearfix:after{clear:both;display:block;content:"\20"}
.fl{float:left}
.fr{float:right}
nav ul li{float:left;}
nav ul li a{padding:0 10px;line-height:40px;font-size:14px;color:#555}
nav ul li a:hover{color:#c00}
</style>
<header class="clearfix" id="top"><!--清除浮动形式1-->
 <img src="images/logo.png" alt="网站logo" class="fl"/>
 <nav class="fr">
  <ul class="menu">
   <li><a href="#">栏目1</a></li>
   <li><a href="#">栏目2</a></li>
   <li><a href="#">栏目3</a></li>
   <div class="clear"></div><!--清除浮动形式2-->
  </ul>
 </nav>
</header>

       第一种用到的是伪类选择器 :after,意思是:在被选元素的内容后面插入内容,一般格式:

.clearfix:after{clear:both;display:block;content:"内容;}

       另一种对应的是:before,意思是:在被选元素的内容前面插入内容。格式和 :after一样,IE6、IE7不支持。

必须掌握的其他CSS选择器

* :通用选择器(IE6+,Firefox,Chrome,Safari,Opera)

       选择的是全部元素,在做兼容性、字体时非常好用。

*{margin:0;padding:0;font-family:"Microsoft Yahei"}

       用于子选择器,下面是id为main下的所有元素都添加了font-size:14px。

#main *{font-size:14px}

#id:id选择器(IE6+,Firefox,Chrome,Safari,Opera)

#top{background:#eee}

.class:类选择器(IE6+,Firefox,Chrome,Safari,Opera)

.clear{clear:both}

x y:默认标签选择器(IE6+,Firefox,Chrome,Safari,Opera)

ul li{float:left}
ul li a{color:#c00}

       如果是类选择器结合默认标签可以这样写

.menu a{display:block}

x:visited,x:link,x:hover:伪类选择器(IE7+,Firefox,Chrome,Safari,Opera)

a:link{color:#c00;}
a:visited{color:#555}
a:hover{decoration:underline}/*在IE6下,只能用于a标签*/

x + y :毗邻元素选择器(IE7+,Firefox,Chrome,Safari,Opera)

ul + p{color:#c00}

x > y:子元素选择器(IE7+,Firefox,Chrome,Safari,Opera)

#top > ul li{border:1px solid #eee}

       用在栏目下的子栏目的例子,这选择器影响到的是栏目1的<li>标签,而影响不到该栏目下的子栏目的<li>标签,如果样式写成

#top ul li{border:1px solid #eee}

       则影响到#top下的全部<li>标签。

<header id="top">
 <ul>
  <li>
   <a href="#">栏目1</a>
   <ul>
    <li><a href="#">子栏目1</a></li>
    <li><a href="#">子栏目2</a></li>
   </ul>
  </li>
 </ul>
</header>

x:nth-child(n),x:nth-last-child(n):匹配元素中从头数第几个标签,后面是倒序匹配(IE9+,Firefox 3.5,Chrome,Safari,Opera)

li:nth-child(3){color:#c00}/*匹配的是第三个li标签*/
li:nth-last-child(3){color:#c00}/*匹配的是倒数第三个li标签*/

       以上是最常用的选择器,其他选择器几乎用不到,感兴趣的可以网上自己搜一下。

    扩展阅读

    本文地址:https://www.vi586.com/web/389.html
    版权声明:原创文章,版权归重庆SEO吖七所有,欢迎分享本文,支持原创,转载请保留出处

    赞(2)