You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Bulma列中居中CSS圆形容器:解决图标容器靠左问题

解决Bulma列中CSS圆形居中问题

嘿,我明白你的问题了——列里的文本已经居中,但那个CSS画的圆形却一直靠左,对吧?这主要是因为你给.community用了display: table-cell,这个属性需要配合父级的表格布局才能正常工作,而且它本身没法通过常规方式在块级容器里居中。咱们来改改,两种方案任你选:

方案1:调整圆形本身的布局(推荐)

把.community改成flex布局,既能让内部的Font Awesome图标完美居中,又能让圆形自己在列里水平居中,一举两得:

修改后的CSS:

.features { 
  background: #2a3a4c; 
  height: 200px; 
} 
.community { 
  width: 5rem; 
  height: 5rem; 
  background: linear-gradient(135deg, #b15757 0%, #b96868 100%); 
  border-radius: 100%; 
  /* 用flex替代table-cell,实现内部图标居中 */
  display: flex;
  align-items: center;
  justify-content: center;
  /* 让圆形在列中水平居中 */
  margin: 0 auto;
}

你的HTML不用改,还是原来的结构:

<div class="features"> 
  <div class="container"> 
    <div class="columns is-mobile "> 
      <div class="column"> 
        <div class="community"> 
          <font-awesome-icon col size="2x" :icon="['fas', 'tasks']" /> 
        </div> 
        Features 
      </div> 
    </div> 
  </div> 
</div>

方案2:给列添加flex布局

如果你不想改动.community的样式,也可以直接给Bulma的.column加上flex布局,让它内部的所有元素(包括圆形和文本)都居中:

添加这段CSS:

.column {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center; /* 确保文本依然居中 */
}

这样不管.community用的是table-cell还是其他display类型,都会乖乖在列里居中啦。

为什么原来的方法不行?

display: table-cell的元素不会像普通块级元素那样响应margin: 0 auto,而且你的.column父元素没有设置表格相关的布局(比如display: table),所以圆形就默认靠左显示了。用flex布局或者调整圆形的display属性,就能轻松解决这个问题~

内容的提问来源于stack exchange,提问作者niko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 06:16:34