css样式为什么要有空格(css几种解决inline-block间隙的方案整理)
类别:Web前端 浏览量:2058
时间:2022-01-25 00:02:26 css样式为什么要有空格
css几种解决inline-block间隙的方案整理序
display有几种属性:
inline是内联对象,比如<a/> 、 <span/>标签等,可以“堆在一起”显示,宽高由内容决定,不能设置;
block是块对象,比如<li/>、<p/>标签等,要占一整行,但是宽高可以自定义;为了弥补inline和block的不足,又扩充了inline-block属性;
inline-blcok可以将对象呈递为内联对象,而内容作为块对象呈递。
通俗点讲就是“可定宽高的堆在一起”显示
为什么会有间隙
inline-blcok块之间的不可见符号会被保留父层字体的1/3大小的空间
解决方案
知道了原因,方案就好找了,我把它分为以下几种
原始状态
<ul> <li>item1</li> <li>item2</li> <li>item3</li> <li>item4</li> <li>item5</li> </ul>
1、改变书写结构
<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>
效果图
以上几种均可以完美的达到去除间隙的作用
但是,从代码的可读性上看,或多或少有一些不足
2、打包工具
使用打包工具或者自写脚本,在上线前将响应HTML代码打包成一行,即可
3、丢失结束标签
<ul> <li>item1 <li>item2 <li>item3 <li>item4 <li>item5 </ul>
此方法虽然可以解决此问题,但是在Doctype为xhtml时将报错,所有方法是否适用须视情况而定。
4、css hack
知道间隙的产生原因和间隙的大小后,动手写一个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; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
您可能感兴趣
- css样式为什么要有空格(css几种解决inline-block间隙的方案整理)
- display:inline、block、inline-block 的区别
- cssdisplay覆盖规律(css解决display:inline-block;产生的缝隙间隙的方法)
- 去除inline-block元素间的间隙
- 二胎家庭老大爱闹情绪,用这招很有效(二胎家庭老大爱闹情绪)
- 一个30岁男人外遇失败的全过程(一个30岁男人外遇失败的全过程)
- 《无敌破坏王2》 不聊彩蛋,聊聊我从动画里看到的现实那些事儿(无敌破坏王2不聊彩蛋)
- 《寄生虫》 三观不正 人类悲欢从来不相通,感同身受也并非本能(寄生虫三观不正)
- 这部动漫中的女孩子,可比101女孩更加励志(这部动漫中的女孩子)
- 《白狐的人生》热拍 贾征宇偶像包袱难自弃 图(白狐的人生热拍)
热门推荐
- sqlserver列数据拆分(SQL Server基础之行数据转换为列数据)
- 织梦标签在哪里设置(织梦dedecms gbk站点转utf8之mip改造方案分享)
- Sql的decimal、float、double类型的区别
- python读取txt文件每一行数据(python读取txt文件并取其某一列数据的示例)
- JS中call和apply区别
- css布局图解(浅谈CSS三栏布局的N种实现)
- php技术优点和缺点(php的优点总结 php有哪些优点)
- tomcat优化jvm(Tomcat修正JDK原生线程池bug的实现原理)
- 如何查看mysql慢查询日志(MySQL慢查询如何定位详解)
- height与line-height的关系(为什么你写的height:100%不起作用)