让多个元素在一行显示的方法和技巧(面试题)
- 作者: 多梦笔记
- 时间: 2026年02月17日 00:33
=“content1”>
用display:inline-block可以让元素在一行显示但是它会受空格换行键的影响会产生默认的间距;
=“wrap”=“box1”>文字内容一3 =“box2”>文字内容二4 .wrap{
font-size: 0;
4 }
5 .box1,.box2{
6 8 9 *display: inline;/css hack ie浏览器可识别/
*zoom:1;触发css hack的layout11 16px;
12 }
display: inline-block;在IE6,IE7下不兼容的解决办法(css hack 兼容) =>*display: inline; =>*zoom:1;
总结让多个元素在一行显示面试题
1.用 display: inline把元素传化为行内元素但是设置宽高属性不起作用;
2.用display:inline-block可以让元素在一行显示但是它会受空格换行键的影响会产生默认的间距;
解决办法:
1.去掉空格和换行键的影响让标签全都在一行(这种方法不推荐阅读性差)
2.给加了display: inline- block属性的元素的父元素加一个属性font-size:0(但是我们会发现一个问题:元素里面如果有文字文字消失=解决:我们只需要在元素身上加一个 font-size把父元素font-size:0;覆盖)(最解决方法)
=“main”=“left”=“right”.left,.right{
float: left;
.left{
#FF0000
.right{
greenyellow
11 }
12 .main{
13 overflow: hidden;
14 }
3.利用float:left/right,但是我们需要清除浮动,父集加下overflow:hidden
关于“display:inline-block兼容ie6/7的写法”补充网址https://blog.csdn.net/ac601458466/article/details/48850669
IE7下块元素如何兼容 display:inline-block写法?实际有效的方法共有2种:方法1:直接让块元素设置为内联对象呈递(设置属性 display:inline),然后触发块元素的 layout(如:zoom:1等)。兼容各浏览器的代码如下: div {display:inline-block;*display:inline; *zoom:1;…}解释:dispaly:inline-block照顾的是ie8+的浏览器,这是正常的设置,在低版本的ie下设置行内块有2个条件,一个是行内,一个是设置宽高,触发layout即可设置宽高,而div设置了宽高后还是会换行,layout不是为水平而设置的,所以为块级元素转行内块加上了*display:inline属性,但是display:inline不会触发layout,于是加上zoom:1重新触发layout,于是就形成了一个可以“设置宽高的行内元素”
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
- 上一篇: 王思聪被取消限制消费令 事件始末缘由回顾
- 下一篇: 驰援武汉!绿佳集团向疫区首批捐赠300台电动车
相关文章
-
王思聪被取消限制消费令 事件始末缘由回顾
王思聪被取消限制消费令 事件始末缘由回顾
- 站长
- 2026年02月17日
-
怎么样让关键词迅速优化上排名
怎么样让关键词迅速优化上排名
- 站长
- 2026年02月17日
-
无人机在防汛救援工作中的应用
无人机在防汛救援工作中的应用
- 站长
- 2026年02月17日
-
驰援武汉!绿佳集团向疫区首批捐赠300台电动车
驰援武汉!绿佳集团向疫区首批捐赠300台电动车
- 站长
- 2026年02月17日
-
如何树立网站优化思维 怎么提升网站排名
如何树立网站优化思维 怎么提升网站排名
- 站长
- 2026年02月17日
-
鸿蒙全链路运维指南:资讯·开发·稳行,role:assistant
鸿蒙全链路运维指南:资讯·开发·稳行,role:assistant
- 站长
- 2026年02月17日
