【问题标题】:Bulma Inconsistent Input WidthBulma 输入宽度不一致
【发布时间】:2017-07-26 22:24:32
【问题描述】:

我有一个使用 Bulma 框架的简单表单。我的输入宽度不一致,找不到补救措施。 https://jsfiddle.net/onzpum90/ 当标签很长时似乎会发生这种情况。如果我保留短标签,问题就消失了。为什么标签会影响输入宽度?可能是我不熟悉的 flexbox 问题。有人知道解决方案吗?

<form action="">
<div class="field">
<div class="field-body">
  <div class="field">
    <p class="control is-expanded">
      <label class="label">A very long label for a form</label> 
      <input type="text" name="" value="" class="input ">
     </p>
  </div> 
  <div class="field is-grouped">
    <p class="control is-expanded">
      <label class="label">Email</label>
      <input type="email" name="email" value="" class="input ">
    </p>
  </div>
  </div>
 </div>
 <div class="field is-horizontal">
<div class="field-body">
  <div class="field">
    <p class="control is-expanded">
      <label class="label">Short Label</label> 
      <input type="text" name="" value="" class="input ">
     </p>
  </div> 
  <div class="field is-grouped">
    <p class="control is-expanded">
      <label class="label">Email</label>
      <input type="email" name="email" value="" class="input ">
    </p>
   </div>
  </div>
 </div>
</form>

【问题讨论】:

    标签: html css flexbox bulma


    【解决方案1】:

    表单元素 (.field) 的 div 容器是大小为 flex-grow: 1 的弹性项目。

    @media screen and (min-width: 769px), print
    .field-body > .field:not(.is-narrow) {
        -webkit-box-flex: 1;
        flex-grow: 1;
    }
    

    虽然您已经定义了flex-grow,但您还没有定义flex-basis。因此,flex-basis 保持其默认设置:auto

    使用flex-basis: auto,容器空间根据内容的长度按比例分布在项目之间。

    因此,标签较长的项目的长度会更长。

    您只需将flex-basis 设置为0 即可解决此问题。

    删除应用于.fieldflex-growflex-shrink 规则并改用它:

    flex: 1 1 0
    

    等同于:

    flex: 1
    

    revised demo

    有关flex-basis: autoflex-basis: 0 之间区别的完整说明,请参阅此帖子:Make flex-grow expand items based on their original size

    【讨论】:

    • 非常感谢您的解释,正是我想要的。这解决了我的问题。
    • 谢谢!我想知道为什么flex-basis: 0 不在官方布尔玛?有什么副作用?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    • 2019-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多