css几种解决inline-block间隙的方案(整理)
网站建设 2023-01-28 21:38www.1681989.com免费网站
序
display有几种属性
le是内联对象,比如<a/> 、 <span/>标签等,可以“堆在一起”显示,宽高由内容决定,不能设置;
block是块对象,比如<div/>、<p/>标签等,要占一整行,宽高可以自定义;为了弥补le和block的不足,又扩充了le-block属性;
le-blcok可以将对象呈递为内联对象,而内容作为块对象呈递。
通俗点讲就是“可定宽高的堆在一起”显示
为什么会有间隙
le-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-spacg/word-spacg,推荐letter-spacg,因为此属性不会产生负间隙,但需要注意,要在子元素上设置letter-spacg:0
3、如果你转化块对象,那需要为低版本浏览器设置le兼容,不让样式会乱掉
以上几点给出以下代码
.parent { letter-spacg: -.3333em; font-size: 0; } .child { display: le; display: le-block; }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
网站设计
- 静宁会SEO的网站建设公司:全面提升您的网络影
- 提升在线业务的关键:选择最佳的丽水网站建设
- 浙江网站优化发展潜力如何
- 井研专业的网站建设公司:打造您的在线品牌
- 灵山SEO网站建设公司:提升您的在线业务表现
- 蒙城网站建设优化公司:提升您网站表现的理想
- 阳谷企业网站优化:提升线上业务力的关键
- 樟树专业的网站建设公司:打造您在线业务的坚
- 通河百度SEO排名的策略与技巧
- 重庆百度快照排名如何进行精准的客户引流
- 重庆百度快照排名
- 常宁便宜的建站公司:助您轻松打造在线业务
- 巫溪百度网站优化:提升网站曝光率与流量的关
- 湖北整站优化怎么做才能放大客户需求
- 闸北网站建设多少钱?全面解析与预算规划
- 辽宁企业网站优化怎么做电话营销