Angular 4 组件和 css flex 顺序

标签 angular css flexbox

我这里有一个笨蛋 - https://plnkr.co/edit/rnN8oQAsIcYWjsjQHfuk?p=preview

这是一个简单的导航样式,使用 display: flex;order 来定位元素

元素使用 flex order 将它们排序为 1, 2, 3, 4

这是基本的,但实际代码需要顺序。

顶部导航只有 html 中的四个 div,它们的顺序是 1、2、3、4

底部导航与顶部导航相同,但添加了“三”元素作为组件。

“三”组件中的 html 和类与顶部导航中的“三”相同。

flex 顺序似乎不适用于 Angular 组件。

谁能告诉我为什么这不起作用以及如何解决它。

<div class="nav-container">

  <div class="nav">

    <div class="nav-item nav-item-one">
      One
    </div>

    <div class="nav-item  nav-item-two">
      Two
    </div>

    <div class="nav-item  nav-item-three">
      Three
    </div>

    <div class="nav-item  nav-item-four">
      Four
    </div>

  </div>

</div>


<div class="nav-container">

  <div class="nav">

    <div class="nav-item nav-item-one">
      One
    </div>

    <div class="nav-item  nav-item-two">
      Two
    </div>

    <three></three>

    <div class="nav-item  nav-item-four">
      Four
    </div>

  </div>

</div>

最佳答案

问题是当 Angular 渲染你的组件时,它用一个名为 three 的元素包裹它的内部 View 。当您检查 DOM 时,您会看到它。要修复它,您必须在您的 css 文件(style.css 或组件 css 文件)中对 three 进行排序,如下所示

style.css

.nav-item-three, three{
    order: 3;
}

或组件css文件

three {
    order: 3;
}

关于Angular 4 组件和 css flex 顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47913118/

相关文章:

javascript - 为什么我无法在表单标签内移动垫子滑动切换?

angular - 如何使用 ion-col 响应式设置大型动态表数据

javascript - 根据其他单元格在表格中显示按钮

html - 具有动态高度的垂直滚动 div

javascript - 为什么订阅没有被调用

html - 在 Opera/Chrome 浏览器中滚动时,粘性导航栏会在某一时刻闪烁(渲染错误?)

javascript - on ('click' ) 函数在第二次点击时触发

html - CSS 边框只出现在悬停时?

html - Flexbox:按比例增加或减少中间元素的高度

html - Flexbox 均匀间隔元素并在较窄的屏幕上环绕