两个内联块元素,每个元素的宽度为50%,不能并排放置在一行中

两个内联块元素,每个元素的宽度为50%,不能并排放置在一行中,第1张

两个内联块元素,每个元素的宽度为50%,不能并排放置在一行中

使用

inline-block
元素时,
whitespace
这些元素之间 始终存在 问题 (该空间大约为4px宽)。

因此,您的两个

divs
都具有50%的宽度,加上
whitespace
(〜4px)的宽度大于100%,因此会损坏。您的问题的示例:

body{  margin: 0; }div{  display: inline-block;  width: 50%;}.left{  background-color: aqua;}.right{  background-color: gold;}<div >foo</div><div >bar</div>

有几种方法可以解决此问题:

1.这些元素之间没有空格

body{  margin: 0; }div{  display: inline-block;  width: 50%;}.left{  background-color: aqua;}.right{  background-color: gold;}<div >foo</div><div >bar</div>

2.使用HTML注释

body{  margin: 0; }div{  display: inline-block;  width: 50%;}.left{  background-color: aqua;}.right{  background-color: gold;}<div >foo</div><!----><div >bar</div>

3.将父级设置

font-size
0
,然后为
inline-block
元素添加一些值

body{  margin: 0; }.parent{  font-size: 0;  }.parent > div{  display: inline-block;  width: 50%;  font-size: 16px; }.left{  background-color: aqua;}.right{  background-color: gold;}<div >  <div >foo</div>  <div >bar</div></div>

4.在它们之间使用负边距( 不理想)

body{  margin: 0; }div{  display: inline-block;  width: 50%;  margin-right: -4px; }.left{  background-color: aqua;}.right{  background-color: gold;}<div >foo</div><div >bar</div>

5.落角

body{  margin: 0; }div{  display: inline-block;  width: 50%;}.left{  background-color: aqua;}.right{  background-color: gold;}<div >foo</div><div >bar</div><hr><div >foo</div><div >bar</div>

6.跳过某些HTML结束标记

body{  margin: 0; }ul{  margin: 0;   padding: 0; }li{  display: inline-block;  width: 50%;}.left{  background-color: aqua;}.right{  background-color: gold;}<ul>  <li >foo  <li >bar</ul>html{    font-size: 1em;}.ib-parent{      font-size: 0;}.ib-child{    display: inline-block;    font-size: 1rem;}

*



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5149160.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存