【问题标题】:Inline block not giving desired effect内联块没有产生预期的效果
【发布时间】:2019-03-18 04:13:58
【问题描述】:

我正在尝试构建一个非常基本的商店页面。我希望这样的产品之一:

但不幸的是它看起来像这样:

我正在尝试使用内联块将协商按钮和产品价格放在同一行,将按钮拖到左侧,将价格拖到右侧,但内联块似乎无法正常工作。谁能告诉我为什么?

#popularSection {
  background-color: blue;
}

#product {
  outline: 1px solid grey;
  margin: 15px;
  background-color: lightblue;
  padding-top: 10px;
}

#negButton {
  margin-bottom: 10px;
}

#inline {
  margin: 0;
  padding: 0;
  display: inline-block;
}

img {
  width: 190px;
  height: 140px;
}
<div class="container">
  <div class="row" id="popularSection">
    <div class="col-lg-3 text-center">
      <div id="product">
        <img class="img-responsive" src={{path}}/>
        <p>{{productName}}</p>
        <div id="inline">
          <button class="btn btn-success btn-sm" type="button" id="negButton" (click)="negotiate()">Negotiate</button>
          <p>{{price}}</p>
        </div>
        <button class="btn btn-success btn-sm" type="button" id="addCart" (click)="addCart()">Add To Cart</button>
      </div>
    </div>
  </div>
</div>

【问题讨论】:

    标签: angular html twitter-bootstrap css


    【解决方案1】:

    您将display: inline-block 提供给父元素。我认为你必须把它交给子元素。

    所以从 #inline 元素中删除 display: inline-block 并将其提供给 #negButtonp 元素

    【讨论】:

      【解决方案2】:

      您可以将display: flex;flex-direction: row; 一起用于容器。

      #popularSection {
        background-color: blue;
      }
      
      #product {
        outline: 1px solid grey;
        margin: 15px;
        background-color: lightblue;
        padding-top: 10px;
      }
      
      #negButton {
        margin-bottom: 10px;
      }
      
      #inline {
        display: flex;
        flex-direction: row;
      }
      
      img {
        width: 190px;
        height: 140px;
      }
      <div class="container">
        <div class="row" id="popularSection">
          <div class="col-lg-3 text-center">
            <div id="product">
              <img class="img-responsive" src={{path}}/>
              <p>{{productName}}</p>
              <div id="inline">
                <button class="btn btn-success btn-sm" type="button" id="negButton" (click)="negotiate()">Negotiate</button>
                <span>{{price}}</span>
              </div>
              <button class="btn btn-success btn-sm" type="button" id="addCart" (click)="addCart()">Add To Cart</button>
            </div>
          </div>
        </div>
      </div>

      【讨论】:

        【解决方案3】:

        而不是使用p 标记您的价格(这是一个block 元素), consider using aspaninstead (which is aninline` 元素)

        然后您可以从 #inline div 中删除样式

        (请注意,在下面的 sn-p 中,我已经替换了 {{interpolation}},以便您可以在没有 Angular 的情况下查看示例)

        #popularSection {
          background-color: blue;
        }
        
        #product {
          outline: 1px solid grey;
          margin: 15px;
          background-color: lightblue;
          padding-top: 10px;
        }
        
        #negButton {
          margin-bottom: 10px;
        }
        
        #inline {
          margin: 0;
          padding: 0;
          display: inline-block;
        }
        
        img {
          width: 190px;
          height: 140px;
        }
        <div class="container">
          <div class="row" id="popularSection">
            <div class="col-lg-3 text-center">
              <div id="product">
                <img class="img-responsive" src="https://craft.com.au/images/products/FPA13.jpg" />
                <p>Product 1</p>
                <div>
                  <button class="btn btn-success btn-sm" type="button" id="negButton" (click)="negotiate()">Negotiate</button>
                  <span >100</span>
                </div>
                <button class="btn btn-success btn-sm" type="button" id="addCart" (click)="addCart()">Add To Cart</button>
              </div>
            </div>
          </div>
        </div>

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-04-20
          • 2019-12-13
          • 2015-07-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-09-26
          • 2017-05-22
          相关资源
          最近更新 更多