网站首页 网站建设 公司动态 行业新闻 案例展示 关于我们

文章内容

display:inline-block详解

日期:2013-12-13  来源:攀枝花惠康网络公司

在前端开发中,我们遵循结构,默示,行为相分手。所以将润色型图片操作css的background把它写在默示层中。那最常见的就是icon的应用。如:

1 <a class="icon-flickr" href="http://www.css88.com/">去我的flickr相册</a>。这是操作行内元素的左侧内间距(padding-left)实现的icon+文字的组合。

首先先对行内元素(inline elements,好比span,a,b等。)和块元素(block elements,好比div,h1,p等)进行一下常识回首回头回忆.简而言之,它们的区别可以分为下几点

  1. 块元素会自动在末尾加一个换行,而行内元素不会。
  2. 块元素可以界说自身的高度(width)和宽度(height),而行内元素不成以。
  3. 块对象界说的自身垂直边距可以改变行高,而行内元素虽然可以界说但改变不了行高。

但有时辰,我们还需要此外一种默示形式,只是零丁的icon而不需要文字或者链接,而且是图文混排。也许你想只要把span琅缦沔的文字删除不就可以了么,现实上并非如你所愿。

1 <a class="icon-flickr" href="http://www.flickr.com/liuzhitao"></a>。如不美观你此刻在ie下,必定什么也看不到。

原因是行内元素在内容为空的情形下,ie认为它的width为0。

1 <a class="icon-flickr"> </a>,此刻在ie下可以看到了。

按照行内元素的特征,并不能为其设置一个宽度来解决,所以只能在琅缦沔加一个毫无意义的空格用来占位,来生成一个高度值,但在无css的前提下(在spider的眼里),无法得知它为何物。如下:

1 &lt;a class="icon-flickr"&gt; &lt;/a&gt;

所以这样的解决方案让人无法接管。

使用inline-block就可以解决这个问题

经由过程将外包元素设置为inline-block,操作有inline的行级特征和block的指定高度和宽度的特征。再经由过程将内嵌标签中的诠释文字潜匿来实现该效不美观。

1 你会在这里看到两个并排的icon,它们是“<a class="icon" href="http://www.css88.com/">~这里飘过无尽的诠释性文字啊!~</a><apan class="crayon-o">>~这里飘过无尽的诠释性文字啊!~</a>”,flickicon,它和文字在一路。

代码如下:

123456789101112131415161718192021     .icon{display:inline-block;/* ie8,firefox3,safari,opera */display:-moz-inline-stack;/* firefox2,-moz-inline-box其实也可以,但在某些情形下涣有些异常-_-b */*display:inline;zoom:1;/*ie6,7,在ie中,如不美观该class应用在行内元素中的时辰, display:inline-block 会触发layout.年夜而使该元素拥有inline-block的特征,但为了考虑到通用性,使其能在块元素中应用,所以使用zoom:1来触发layout*/width:20px;height:20px;vertical-align:middle; /* 这个用来对opera的hack,使其垂直居中 */overflow:hidden; /* 针对ie,防止内容溺出,造成的高度及宽度

文章来源:攀枝花惠康网络公司

惠康网络,是一家专业从事攀枝花网站建设,攀枝花网站制作,攀枝花网站设计公司,提供网站建设一条龙服务(网站域名注册+网站服务器租用+网站开发+网站维护+网站营销推广),惠康网络立足攀枝花,辐射全中国,攀枝花惠康网络的客户已经遍布国内各地大中小城市,我们高效优质的网站建设服务深受用户好评。

客服热线:tel(谢先生)  客服QQ:1323605005  
服务邮箱:yewubu@huikon.com(售前咨询)  jishubu@huikon.com(技术部)  shouhou@huikon.com(售后服务)
公司地址:四川省攀枝花市
邮编:617200