使用flexbox布局时如何给同一行的两个p标签添加间距
解决方案
方法1:使用flex布局专属gap属性(推荐)
gap是CSS为弹性、网格布局提供的原生间距属性,直接在父容器上设置即可,只会在子元素之间生成间距,不会在容器边缘产生多余空白,适配目前所有主流浏览器。如果设置了flex-wrap: wrap允许子元素换行,gap也会自动在行与行之间生成垂直间距,可单独通过row-gap、column-gap分别控制垂直、水平间距。
修改后的CSS代码示例:
#imprint { background-color: black; color: #FFFFFF; display: flex; flex-wrap: wrap; padding: 15px; justify-content: center; /* 新增,数值可按需调整,也可替换为column-gap: 20px 仅设置水平间距 */ gap: 20px; }
方法2:使用margin兼容旧浏览器
如果需要兼容IE11等不支持gap的老旧浏览器,可以通过相邻兄弟选择器仅给第一个p之后的p标签添加左侧边距,避免容器左右边缘出现多余间距。
新增CSS规则如下:
#imprint p + p { /* 数值可按需调整 */ margin-left: 20px; }
内容的提问来源于stack exchange,提问作者jonasPamm
相关产品推荐
相关产品推荐

