We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
有基础的朋友可以直接跳过序言,直接看方案
display有几种属性: inline是内联对象,比如<a/> 、 <span/>标签等,可以“堆在一起”显示,宽高由内容决定,不能设置; block是块对象,比如<div/>、<p/>标签等,要占一整行,但是宽高可以自定义; 为了弥补inline和block的不足,又扩充了inline-block属性; inline-blcok可以将对象呈递为内联对象,而内容作为块对象呈递。
<a/>
<span/>
<div/>
<p/>
通俗点讲就是
**“可定宽高地堆在一起”**显示
inline-blcok块之间的距离会被保持父层字体的1/3大小的空间
知道了原因,方案就好找了,我把它分为以下几种
<ul> <li>item1</li> <li>item2</li> <li>item3</li> <li>item4</li> <li>item5</li> </ul>
<ul> <li>item1</li><li>item2</li><li>item3</li><li>item4</li><li>item5</li> </ul>
<ul> <li> item1</li><li> item2</li><li> item3</li><li> item4</li><li> item5</li> </ul>
<ul> <li>item1</li ><li>item2</li ><li>item3</li ><li>item4</li ><li>item5</li> </ul>
<ul> <li>item1</li><!-- --><li>item2</li><!-- --><li>item3</li><!-- --><li>item4</li><!-- --><li>item5</li> </ul>
以上几种均可以完美的达到去除间隙的作用 但是,从代码的可读性上看,或多或少有一些不足
使用打包工具或者自写脚本,在上线前将响应HTML代码打包成一行,即可
<ul> <li>item1 <li>item2 <li>item3 <li>item4 <li>item5 </ul>
此方法虽然可以解决此问题,但是在Doctype为xhtml时将报错,所有方法是否适用须视情况而定。
知道间隙的产生原因和间隙的大小后,动手写一个css hack也是一种很好的方法 1、将父容器的字体大小设置为0,可解决绝大多数浏览器(老版本safari不支持) 2、针对不支持上条的浏览器设置字块或字符间间隙letter-spacing/word-spacing,推荐letter-spacing,因为此属性不会产生负间隙,但需要注意,要在子元素上设置letter-spacing:0 3、如果你转化但是块对象,那需要为低版本浏览器设置inline兼容,不让样式会乱掉 总结以上几点给出以下代码
.parent { letter-spacing: -.3333em; font-size: 0; } .child { display: inline; display: inline-block; }
如发现文字有不妥之处,还请不吝赐教
The text was updated successfully, but these errors were encountered:
还可以给外层 div 加 font-size: 0,同样可以清除间隙。
Sorry, something went wrong.
No branches or pull requests
序
通俗点讲就是
为什么会有间隙
解决方案
知道了原因,方案就好找了,我把它分为以下几种
1、改变书写结构
以上几种均可以完美的达到去除间隙的作用
但是,从代码的可读性上看,或多或少有一些不足
2、打包工具
使用打包工具或者自写脚本,在上线前将响应HTML代码打包成一行,即可
3、丢失结束标签
此方法虽然可以解决此问题,但是在Doctype为xhtml时将报错,所有方法是否适用须视情况而定。
4、css hack
知道间隙的产生原因和间隙的大小后,动手写一个css hack也是一种很好的方法
1、将父容器的字体大小设置为0,可解决绝大多数浏览器(老版本safari不支持)
2、针对不支持上条的浏览器设置字块或字符间间隙letter-spacing/word-spacing,推荐letter-spacing,因为此属性不会产生负间隙,但需要注意,要在子元素上设置letter-spacing:0
3、如果你转化但是块对象,那需要为低版本浏览器设置inline兼容,不让样式会乱掉
总结以上几点给出以下代码
The text was updated successfully, but these errors were encountered: