2017-08-16 28 views
1

這就是它現在的樣子。使用flexbox將一行div下的div對齊

我想välj股利低於其他的居中。

我正在使用flexbox。

我現在所做的是包裝所有的div在一個容器中,然後添加:

display: flex; 
align-items: center; 
justify-content: center; 

到容器

的div的行也有它周圍的容器。隨着價值:

display: flex; 
flex-flow: row; 
justify-content: center; 
align-content: center; 
align-items: center; 

最後一個 「按鈕」 分區(välj),具有價值align-self: center;

我是否錯過了一些東西,或者現在應該把它放在中心位置?

+0

你能請張貼的全部代碼或任何小提琴鏈接? –

+0

添加您的html和正確的CSS。 – user5014677

+0

'align-self:center'不能以您期望的方式工作。添加你的html,我會發佈一個答案,顯示如何。 – LGSon

回答

0

雖然@傑拉德的回答確實工作。它不適合我,在我的網站上。由於我從幾年前編寫的代碼中獲得了一堆繼承的css。然而,這確實奏效。

.sub-slider { 
 
    width: 100%; 
 
    display: flex; 
 
    flex-flow: column; 
 
} 
 
.slider { 
 
    display: flex; 
 
    flex-flow: row; 
 
    justify-content: center; 
 
    align-content: center; 
 
    align-items: center; 
 
} 
 

 
.sub-slider-btn-wrp { 
 
    align-self: center; 
 
} 
 
.item { 
 
    width: 20%; 
 
    height: 50px; 
 
    background: blue; 
 
    border: thin solid red; 
 
}
<div class="sub-slider"> 
 
    <div class="slider"> 
 
    <div class="item"></div> 
 
    <div class="item"></div> 
 
    <div class="item"></div> 
 
    <div class="item"></div> 
 
    </div> 
 
    <div class="sub-slider-btn-wrp"> 
 
    <button>Button</button> 
 
    </div> 
 
</div>

0

下面的內容適用於僅適用於行的Flexbox。

.item { 
 
    width: 20%; 
 
    height: 50px; 
 
    background: blue; 
 
    border: thin solid red; 
 
} 
 

 
.row { 
 
    display: flex; 
 
    justify-content: center; 
 
    align-items: center; 
 
} 
 

 
.row:not(:last-child) { 
 
    margin-bottom: 1em; 
 
} 
 

 
.container { 
 
    width: 100%; 
 
}
<div class="container"> 
 
    <div class="row"> 
 
    <div class="item"></div> 
 
    <div class="item"></div> 
 
    <div class="item"></div> 
 
    <div class="item"></div> 
 
    </div> 
 
    <div class="row"> 
 
    <button>Button</button> 
 
    </div> 
 
</div>

1

在Flexbox的該align-*性質(align-items/content/self)定義了瀏覽器之間並且沿着它們的容器的橫軸圍繞柔性物品如何分配空間。

你的情況,其中 容器方向上, align-self: center將垂直居中的按鈕,但如果它的父沒有比柔項目更高的高度

所以,一個不會直觀地看到它。

根據你說有一個行格左右的價格項目和一個按鈕周圍,你有兩個主要選擇,中間的按鈕:

  1. 更改容器方向和align-self: center將水平居中按鈕。

  2. 更換align-self: centermargin: auto

+0

在我的回答中,我將容器更改爲顯示列,「行」顯示行,然後使用「align-self:center」居中按鈕。 – vonhact

+0

@vonhact是的,我看到了。由於_why_不僅僅是一個代碼示例更重要,我發佈了我的答案來解釋爲什麼您的初始解決方案不起作用以及哪些可用選項存在。 – LGSon

+1

好的,謝謝:) – vonhact