在对导航栏做水平排列的时候,我们往往对li元素设为display:inline-block

目的是为了,让所有li元素并排在一起,但是遇到个问题,我们的标签之间会产生空白边距

如图所示:

这样看上去,原本可以紧凑排列的,多出了这么些空白边距,我们有时候处理的方法是:

对于每个li元素设置为float:left,这样做虽然能够消除空白边距,但是其父元素ul的高度就无法自适应,举个例子,每个元素li的高度为30px,但是这样做了之后,ul的高度仍为0,就算清除了浮动,

所以,最好的办法,就是给每个元素li,显示为inline-block,即行内元素,但是这个边距如何去除呢?

方法如下:

  我们只需要在父元素ul上面设置,font-size:0px ,这样空白边距就消失了,

  看一下效果图:

这样就很好看了,还有一种方法,就是在每一对li元素之间不要有换行,即在我们大代码里面,把换行放在li元素内部,如下:

<ul>

  `     <li>a

    </li><li>b

    </li><li>b

    </li><li>b

    </li>

</ul>

这样也是能够消除换行带来的空白边距的哦~~~

标签li设为display inline-block后间距问题的更多相关文章

  1. display:inline block inline-block 的区别

    原文地址:http://blog.csdn.net/jly036/article/details/5506182 display:block就是将元素显示为块级元素. block元素的特点是: 总是在 ...

  2. float:left 与display:inline的具体区别?

    设了float:left的元素允许它的右边存在任何元素同行显示,不论是内联元素还是块元素.但它的左边还是不允许存在任何元素与之同行显示,哪怕其它的元素的代码在前,除非也给前面的元素加上float:le ...

  3. display:inline、block、inline-block的区别

    display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都可控制: 宽度不设是它的容器的100%,除非设定一个宽度 <div& ...

  4. 理解display:inline、block、inline-block

    要理解display:inline.block.inline-block的区别,需要先了解HTML中的块级(block)元素和行级(inline)元素的特点,行内元素也叫内联元素. 块级元素 总是另起 ...

  5. HTML5 display:inline、block、inline-block的区别--备用

    display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都可控制: 宽度缺省是它的容器的100%,除非设定一个宽度 <div& ...

  6. display:inline、block、inline-block的区别(转)

    display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都可控制: 宽度缺省是它的容器的100%,除非设定一个宽度 <div& ...

  7. display inline or block

    一.首先要了解什么是块级元素与行级元素 块级元素 会占领页面的一行,其后多个block元素自动换行. 可以设置width,height,设置了width后同样也占领一行.同样也可以设置   margi ...

  8. display:inline、block、inline-block区别

    display:inline.block.inline-block区别 display:block就是将元素显示为块级元素. display:inline就是将元素显示为行内元素. inline-bl ...

  9. display:inline、block、inline-block的区别(摘抄)

    display:inline.block.inline-block的区别 display:block就是将元素显示为块级元素. block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都 ...

随机推荐

  1. ASCII\UNICODE编码的区别

    前几天,Google给我Hotmail邮箱发了封确认信.我看不懂,不是因为我英文不行,而是"???? ????? ??? ????"的内容让我不知所措.有好多程序员处理不好编码问题 ...

  2. Linux网络配置常用命令

    计算机需要网络连接才能和其他计算机通信,这是通过操作系统识别接口卡(如以太网卡.猫等等),并配置该接口以连接到网络上来实现的.网络配置命令可以用来配置以下类型的网络接口:以太网.ISDN(综合业务数字 ...

  3. 【转】深入理解java的String

    要理解 java中String的运作方式,必须明确一点:String是一个非可变类(immutable).什么是非可变类呢?简单说来,非可变类的实例是不能被修改的,每个实例中包含的信息都必须在该实例创 ...

  4. C#模拟进度条

    自己看源码 using System; namespace ConsoleTest { class Program { static void Main(string[] args) { Consol ...

  5. Dapper相关了解

    公司新项目用的是Dapper,做的时候没有具体看dapper的具体用法,现在回来回顾总结一下. 1-总体介绍dapper 我们都知道ORM全称叫做Object Relationship Mapper, ...

  6. snmp snmp4j的使用

    snmp4j的使用 一.什么是snmp及snmp4j? snmp是 Simple Network Management Protocol (简单网络管理协议)的简写. SNMP4J是一个用Java来实 ...

  7. Python3中装饰器的使用

    较为复杂的装饰器使用: user,passwd = 'hjc',111111 def auth(type): print('auth type:',type) def outwrapper(func) ...

  8. iOS开发进制转换

    1.十进制转换为二进制 /** 十进制转换为二进制 @param decimal 十进制数 @return 二进制数 */ + (NSString *)getBinaryByDecimal:(NSIn ...

  9. Xgboost的sklearn接口参数说明

    from xgboost.sklearn import XGBClassifier model=XGBClassifier(base_score=0.5, booster='gbtree', cols ...

  10. Java开发环境配置(JDK+Tomcat+MyEclipsed)

    前言 这个项目一开始,我只能说我把自己整的很无语,所以我只能在调整心态的基础上,重新把思路缕了一遍,好了,接下来就说java运行环境以及发布运行方法还有SSH环境配置. 内容 本次配置用到的安装包: ...