html - 当我链接完整的 div 时,我的 Flexbox 不断缩小

标签 html css flexbox

我正在创建按钮并将它们完美地居中居中我在我的 div 周围使用了一个 flexbox 包装器,一旦我链接了完整的 div,它就会向左浮动,下面的“五列”收缩是代码示例。我想要完成的是每列中有 5 列将是一个与文本右对齐的图标。

.FlexBox {
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  width: 100%;
}
.FiveColumns {
  width: 20%;
  float: left;
}
.GreyBorder {
  border: 2px solid #B2B2B2;
}
<section>
  <div class="FullWidth FlexBox">
    <asp:HyperLink ID="AirFare_HyperLink" runat="server" NavigateUrl="">
      <div class="FiveColumns GreyBorder">
        <asp:Image ID="Image4" runat="server" ImageUrl="https://mktcdn.500px.org/assets/icons/lightbox_placeholder_icon@2x-a5b4509ac42a996d07b9f32379f1eae19310a57d38e5914c59230bfa36815c9a.png" />
        <h6 class="Blue Bold NoMargin">
                                        AIRFARE
                                        <p class="Italic">product</p>
                                    </h6>
      </div>
    </asp:HyperLink>

    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="">
      <div class="FiveColumns GreyBorder">
        <asp:Image ID="Image1" runat="server" ImageUrl="https://mktcdn.500px.org/assets/icons/lightbox_placeholder_icon@2x-a5b4509ac42a996d07b9f32379f1eae19310a57d38e5914c59230bfa36815c9a.png" />
        <h6 class="Blue Bold NoMargin">
                                        CRUISE
                                        <p class="Italic">product</p>
                                    </h6>
      </div>
    </asp:HyperLink>

    <asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl="">
      <div class="FiveColumns GreyBorder">
        <asp:Image ID="Image2" runat="server" ImageUrl="https://mktcdn.500px.org/assets/icons/lightbox_placeholder_icon@2x-a5b4509ac42a996d07b9f32379f1eae19310a57d38e5914c59230bfa36815c9a.png" />
        <h6 class="Blue Bold NoMargin">
                                        VACATION
                                        <p class="Italic">product</p>
                                    </h6>
      </div>
    </asp:HyperLink>

    <asp:HyperLink ID="HyperLink3" runat="server" NavigateUrl="">
      <div class="FiveColumns GreyBorder ">
        <asp:Image ID="Image3" runat="server" ImageUrl="https://mktcdn.500px.org/assets/icons/lightbox_placeholder_icon@2x-a5b4509ac42a996d07b9f32379f1eae19310a57d38e5914c59230bfa36815c9a.png" />
        <h6 class="Blue Bold NoMargin">
                                        REBATE
                                        <p class="Italic">product</p>
                                    </h6>

      </div>
    </asp:HyperLink>
  </div>
</section>

最佳答案

代替:

.FiveColumns {
    width: 20%;
    float: left;
}

试试这个:

.FiveColumns {
    flex: 1;
}

请注意,flex 容器会忽略子元素上的 float 属性:

3. Flex Containers: the flex and inline-flex display values

  • float and clear have no effect on a flex item, and do not take it out-of-flow.

关于html - 当我链接完整的 div 时,我的 Flexbox 不断缩小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35089473/

相关文章:

html - nth-child(odd) 和 nth-child(even) 具有不同的对齐项

jquery - Flexslider 容器不调整大小

html - 为不同的屏幕分辨率大小重新调整 HTML 网站的大小(学校作业)

html - 设置表格高度/宽度时表格元素无响应

jquery - 显示图像的悬停工具提示

javascript - val() 变化时触发 JS 事件

css - 将谓词应用于xpath中的字符串为何有效?

css - 通过 CSS 属性选择器确定属性是否缺失?

html - 尝试对齐列表容器内的文本时出现问题

html - 使用显示 :flex only work properly in index. html 的 div 容器