如何从按钮水平创建功能[关闭]

Posted

技术标签:

【中文标题】如何从按钮水平创建功能[关闭]【英文标题】:How to create a feature Horizontally from button [closed] 【发布时间】:2021-05-11 14:16:19 【问题描述】:

现在,当我单击“添加产品按钮”时,产品表单出现在上一个产品下方。有没有办法让它水平显示,而不是垂直显示?我在 Typescript 中定义了我的 addNewProduct 函数,但我在 html 中调用它。我应该在哪里更改它的显示方式?

【问题讨论】:

【参考方案1】:

框是块元素,因此为什么垂直显示。您必须将框的 CSS 属性设置为“display: inline-block”。

【讨论】:

我试过了,没用。我的盒子是一个组件类,我不确定这是否会改变任何东西。我使用了 Angular,并在组件内部定义了一个 templateUrl,其中包含每次单击按钮时都会重新生成的 html 文件。【参考方案2】:

弹性盒子非常适合这种情况。在所有 product1、product2 框的父 div 上使用样式 display: flex

如果您添加了更多框,使其比您的屏幕/父 div 更宽,它将继续。如果你想让它在宽的情况下换行,请在父 css 上使用 css flex-wrap: wrap

如果高度不同,您也可以使用父类上的 css align-items: center 将所有产品框水平居中对齐。

html 文件:

    <button class="button" (click)="addProduct()">Add product</button>
    <div class="parent">
      <div *ngFor="let product of products, let i = index" class="child">
         <h5>Product i+1</h5>
         <p>Sales price</p>
         <input [(ngModel)]="product.price" \>
      </div>
    </div>

css 文件:

.parent 
   display:flex;
   flex-wrap: wrap; // use this to make it break to a new line, if all the childs are wider than the parent;
   align-items: center; // use this to align the product boxes center horizontally if they are not of same height


.child 
   margin: 10px;
   border: 1px solid black; // same border color as your example


.buttonContainer 
  margin-right: 20px;

.button 
  color:white;
  background-color:blue;

【讨论】:

谢谢!这有助于使盒子水平放置。但是,我的按钮也向下移动到与框相同的行。如何将按钮保持在框顶部的一行? 将按钮移到带有父类(具有 display:flex 的那个)的 div 之外。我更新了代码以匹配。 谢谢!这样可行。抱歉有这么多问题,但我如何编辑css以使框出现一些空格?现在它们似乎相互连接。

以上是关于如何从按钮水平创建功能[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中的集合视图上方添加水平按钮堆栈?

如何在 Swift 中以编程方式在水平线上设置约束? [关闭]

如何在水平stackview中居中按钮?

Android:如何设置多个按钮、编辑文本等 [关闭]

如何更改水平滚动视图中图像按钮的宽度?

React + Material-UI |如何创建水平滚动卡片?