行内块 行内元素缝隙问题

前言:我比较用喜欢行内元素,行内块元素来做横向导航,这样就不用再去担心浮动块级元素带来的不必要影响。但行内元素,行内块元素元素有个硬伤--有默认的间隙

一、行内标签元素出现问题

 

<body>
    <style>
    span { background:red; }
    </style>
    <span>行内元素</span>
    <span>行内元素</span>
    <span>行内元素</span>
</body>


页面显示结果

这时就会发现出现,标签之间出现了间隙。

 

二、行内块标签元素出现问题
行内块标签元素出现的比较多的是在表单元素了。

<body>
    <style>
    button { background:red; border:none; }
    </style>
    <button>行内块元素</button>
    <button>行内块元素</button>
    <button>行内块元素</button>
</body>


页面显示结果

同样的,行内块标签之间也出现了间隙。

 

三、解决方案
会出现间隙的原因,其实是行内标签元素,行内块元素之间的换行带来的影响。只要解决了换行的问题,也就解决了间隙的问题。

①、方案一

<body>
    <body>
    <style>
        span { background:red; }
    </style>
    <span>行内元素</span><span>行内元素</span><span>行内元素</span>
</body>


页面显示结果

这个时候就没有间隙了。

 

②、方案二

<body>
    <style>
    span { background:red; }
    </style>
    <span>行内元素</span
    ><span>行内元素</span
    ><span>行内元素</span>
</body>


页面显示结果

③、方案三

<body>  
    <style>  
        span { background:red; }  
    </style>  
    <span>
    行内元素</span><span>
    行内元素</span><span>
    行内元素</span>  
</body>  


页面显示结果

 

④、方案四

<style> 
    span { background:red; font-size:16px;}  
</style>  
<body>  
    <span>行内元素
    <span>行内元素
    <span>行内元素 
</body>  


页面显示结果

tip:以上四种方案兼容所有常规浏览器。

 

⑤、方案五(把父级font-size设置为0)

<style> 
    body { font-size:0; } 
    span { background:red; font-size:16px;}  
</style>  
<body>  
    <span>行内元素</span>
    <span>行内元素</span>
    <span>行内元素</span>  
</body>  


页面显示结果

tip:方案四在IE7,及IE7下还是会出现间隙。在safari浏览器下也会出现间隙。

 

行内块处理方式相同
--------------------- 
作者:穆弘 
来源:CSDN 
原文:https://blog.csdn.net/w390058785/article/details/80097061 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值