CSS HACK tab制表符导致行内元素之间的空隙如何解决
<!DOCTYPE html>
<html lang="zh-CN"><head>
<meta name="viewport" content="width=device-width; initial-scale=1.0" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="content-language" content="zh-CN" />
<title>测试</title>
<style type="text/css">
.item_content {
float: right;
background-color:red;
width:50%;
font-size: 0px;
} .item{
background-color:pink;
} .item2{
background-color:#888;
} .item3{
background-color: #ff9;
} .item_icon{
float: left;
} </style>
</head> <body>
<div>
<div class="item_content">
<span class="item">北京春季招建筑工人月均工资9621元 秒杀白领</span>
<span class="item2">...</span>
<span class="item3">nnn ...</span>
</div>
</div>
</body>
</html>
运行上述代码会得到如下结果:

出现了不该有的空隙,这是什么原因导致的呢?
原因:这是行内元素之间的tab制表符产生的,换行符也会产生这样的间隙,而字符的大小是定义字体大小来控制的,所以可以通过设置父元素字体大小font-size:0,并指定子元素字体大小来达到清除间隙的目的,针对IE6/7存在的1px间隙,可用*word-spacing:-1px;来清除。
将CSS代码修改一下即可:
<style type="text/css">
.item_content {
float: right;
background-color:red;
width:50%;
font-size: 0px;
} .item{ background-color:pink;
font-size: 14px; } .item2{ background-color:#888;
font-size: 14px;
} .item3{ background-color: #ff9;
font-size: 14px;
} .item_icon{
float: left;
} </style>

CSS HACK tab制表符导致行内元素之间的空隙如何解决的更多相关文章
- 关于行内元素之间有空隙的问题,例如span与input之间
问题如图: 想要的是下面的效果,而却出现上面的效果,解决方法如下: 对于行元素span或者input来说 很多人会用inline-block来显示他们,但是往往发现 中间会留一段小空隙 , 其实这个 ...
- css position 和 块级/行内元素解释
一.position 属性: static:元素框正常生成.块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中. relative:元素框偏移某个距离.元素仍保 ...
- 清除行内元素之间HTML空白的几种解决方案
行内块(inline-block)是非常有用的,特别是想要不用'block'和'float'来控制这些行内元素的margin,padding之时. 问题来了,HTML源码中行内元素之间的空白有时候显示 ...
- 清除行内元素之间的HTML空白
原文连接:Remove Whitespace Between Inline-Block Elements 原文日期: 2013年8月27日 翻译日期: 2013年8月28日 至今我还记得年轻是在IE6 ...
- HTML行内元素与块级元素有哪些及区别详解
转自 https://www.jb51.net/web/724286.html 这篇文章主要介绍了HTML行内元素与块级元素有哪些及区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具 ...
- 行内元素有哪些?块级元素有哪些?CSS的盒模型?转载
块级元素:div p h1 h2 h3 h4 form ul行内元素: a b br i span input selectCss盒模型:内容,border ,margin,padding css中的 ...
- 【转】行内元素和inline-block产生的水平空隙bug
重构工程师们在设计代码时,有喜欢手动删除行内元素之间产生的额外空隙,并通过设置margin或padding来获取想要间距吗?如代码: <div class=“”><span clas ...
- 解决行内元素间隙bug问题
行内元素之间会产生间隙bug问题的场景: 1.当行内元素之间有“回车”.“tab”.“空格”时就会出现间隙. 如下代码: <div> <a>1</a> &l ...
- span i s等行内元素标签之间出现奇怪空格符号
上述展开信息本来是这样写的,但是很奇怪windows下的测试环境支付时间前面莫名其妙多了个小方框 <p> <span><i>收货人:</i>{remar ...
随机推荐
- Elasticsearch 安装中文分词
github地址:https://github.com/medcl/elasticsearch-analysis-ik 注意版本要对应,否则编译完成后elasticsearch不能正常启动 下载文件, ...
- eclipse设置显示代码行数(转)
(转自:http://jingyan.baidu.com/article/b2c186c89b7023c46ef6ff27.html) 载入eclipse的主页面,默认以英文版的eclipse为例 点 ...
- nodejs学习资料
官方文档 阿里nodejs7天快速教程 从零开始nodejs系列文章 一个周末掌握IT前沿技术之node.js篇 nodejs中文api文档 nodejs中文api文档(0.12.2) node ...
- js中的继承
js中继承的实现方式很多,此处给出两种常用方式. <!DOCTYPE html> <html> <head> <meta charset='UTF-8'> ...
- 支付宝APP支付开发- IOException : DerInputStream.getLength(): lengthTag=127, too big.
支付宝APP支付Java开发报错: IOException : DerInputStream.getLength(): lengthTag=127, too big. 后来排查是因为没有设置私钥.
- 解决AutoCAD2010在VS2010上无法命中断点
AutoCAD 2010的二次开发告一段落,现在整理一些开发中遇到的问题. 最早遇到的问题是关于AutoCAD 2010在VS 2010上无法调试.奇怪的是这问题只出现在我同事电脑上,我的电脑一切OK ...
- 用FineReport做的共建共享填报系统
一.应用背景 随着信息技术的不断发展,快速开发出适合用户业务需求发展的填报报表是势在必然的,因此在不断的研究和分析下针对这一业务特点制作了此报表系统,以使不同开发商之间共建共享数据进行填报和统计分析的 ...
- jquery图片时钟
一.生成数字时钟 <script src="http://code.jquery.com/jquery-latest.js"></script> <s ...
- java设计模式之装饰模式
发现设计模式的学习越来越让自己学习的东西太少了,应该多接触一些东西,多出去走一走. 装饰模式概念: 动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活(大话设计模式) 在不 ...
- cuda fft 计算
#include <assert.h> #include <stdio.h> #include <stdlib.h> #include <string.h&g ...