css知识点2@qunar

1、import

  import要放在内部规则前面,不然就会无效;

  impor 引入多个文件,会出现闪烁,浏览器会先去下载import引入的css文件,然后再去解析,应该避免使用import

2、important

  important优先级最高。但important IE6下的bug;

  IE6及以下浏览器有个比较显式的支持问题存在,!important并不覆盖掉在同一条样式的后面的规则。请看下述代码: 

  div{color:#f00!important;color:#000;}
  在上述代码中,IE6及以下浏览器div的文本颜色为#000
  !important并没有覆盖后面的规则;其它浏览器下div的文本颜色为#f00
  div{color:#f00!important;}
  div{color:#000;}
  在上述代码中,IE6及以下浏览器中div的文本颜色表现与其它浏览器一致,都为#f00  
3、自适应布局

  overflow:hidden,通过设置overflow:hidden;可以使得content宽度自适应。

  <style>
  .demo{
	width:960px;
	height:500px;
	margin:0 auto;
  }
  .aside{
	float:left;
	width:200px;
	height:200px;
	margin-right:20px;
	background:#aaa;
  }
  .content{
	height:200px;
	overflow:hidden;
	background:#0ff;
  }
  .inner{
	margin:0 10px 0 10px;
  }
</style>

 

  <div class="demo">
	<div class="inner">
		<div class="aside">aside</div>
	</div>
	<div class="content">通过设置overflow:hidden;可以使得content宽度自适应,但是如果把aside的float设置成left,还要调整边距
	</div>

  </div>
4、行高

  IE6 元素有固定的行高,当高度小于最小的行高时,即使定义更小的高度仍然会失效。但可以通过设置overflow:hidden解决

 .demo{
 	width:500px;
	height:1px;
	overflow:hidden;
	background:#aaa;
}
<div class="demo"></div>
5、css选择器

  1.子选择器E>F,选择所有作为E元素的子元素F。

  2.相邻选择器 E+F,选择紧贴在E元素之后F元素。

  3.兄弟选择器 E~F,选择E元素后面的所有兄弟元素F。

  4.nth-child(n),n是从1开始计数的,类似这样的都是从1开始计数。

  5.E:last-child:匹配父元素的最后一个子元素E。要使该属性生效,E对象必须是某个对象的子元素。

6、target

  匹配相关url指向的元素;

  .b:target{color:#f00}
  <a href="#a">click</a>
  <div id="a">change red</div>

  css target使用前提:a便签的href的取值要与匹配的便签的id一致;

7、增强表单

  为什么加大响应区域:

  增强用户体验

  以复选框为例:

 

    原本:你只能点击中复选框才能选中或者取消选中
    增强:当你点击复选框或它旁边的文本时都能选中或者取消选中

  

使用label标签:
  <label for="blue"><input type="checkbox" id="blue" />蓝色</label>
或者:
  <input type="checkbox" id="blue" /><label for="blue">蓝色</label>
  

  这里利用的是 label 标签的 for 属性,for 的值和需要加强响应区域的复选框的id相同即可,与位置无关;
  
  在label中设置for属性,使其取值等于input id的取值,来兼容ie6;

 

  想在一行的最后,点击任然可以选中,可以这样设置,感觉这样需求不多

   <label for="blue"><input type="checkbox" id="blue" />蓝色</label>
  .label{
  	display:block;  /*因为行内元素没有宽高*/
  }
  <label for="blue"><input type="checkbox" id="blue" />蓝色</label>
8、checked伪类

  匹配用户界面上处于选中的元素,常用于input type为radio与checkbox;

  <style>
	input:checked+span{background:#f00;}
	input:checked+span:after{content:" 我被选中了";}
  </style>
  <form method="post" action="#">
	<fieldset>
		 <legend>选中下面的项试试</legend>
		 <ul>
			 <li><label><input type="radio" name="colour-group" value="0" /><span>蓝色</span></label></li>
			 <li><label><input type="radio" name="colour-group" value="1" /><span>红色</span></label></li>
			 <li><label><input type="radio" name="colour-group" value="2" /><span>黑色</span></label></li>
		 </ul>
	</fieldset>

	<fieldset>
		 <legend>选中下面的项试试</legend>
		 <ul>
			 <li><label><input type="checkbox" name="colour-group2" value="0" /><span>蓝色</span></label></li>
			 <li><label><input type="checkbox" name="colour-group2" value="1" /><span>红色</span></label></li>
			 <li><label><input type="checkbox" name="colour-group2" value="2" /><span>黑色</span></label></li>
		</ul>
	</fieldset>
  </form>

  checkbox可以实现选中多个,不互斥;而radio可以实现互斥,只能选中其中的一个。

  通过checked可以实现隐藏、显示之间的切换。

9、transform

  允许我们对元素进行旋转、缩放、移动或倾斜,这里只对缩放进行解释;

  浏览器默认字体大小是12px,如果希望页面字体大小为10px;

  <style>
  .demo{
	font-size:11px;
	-webkit-transform:scale(10/12);
  }
  span{
	display:inline-block;
  }
  </style>
  <span class="demo">非大声道大神发</span>

   缩放比例是相对于浏览器默认的字体大小进行设置,还要对span进行设置

10、border

  border-color的取值依赖于color的取值,同样可以对border-color进行设置。

css知识点2@qunar,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。