Выровняйте зеленую кнопку в конце каждого деления в css - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть кнопка «купить» (компаратор), которую я хотел бы поместить в конец div, чтобы они были выровнены друг с другом по кнопке «купить».

например:

button button button

не:

button            button
       button    

#content01{
 min-height:500px;
 display: flex;
 flex-direction: row;
 flex-wrap: wrap;
}

.produto{
  display: inline-block;
  margin-top: 20px;
  margin-right: 20px;
  margin-bottom: 20px;
  border: 2px solid #F6F6F6;
  width: 246px;
  text-align: center;
  vertical-align: top;
  padding-bottom:10px;
}


.comprar_button {
  background: green;
  padding:10px;
  color: #fff;
  text-align:center;
  font-weight:bold;
  vertical-align:bottom;
  align-self: flex-end;
}

.comprar_button a{
  color: #fff!important;
}

.comprar_button img{
  width: 15px;
  height: 15px;
}
<div id="content01">
    
  <div class="produto">Some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

  <div class="produto">Some text text some text some text some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

  <div class="produto">Some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

  <div class="produto">Some text Some text Some text Some text Some text Some text Some text Some text Some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

</div>

https://jsfiddle.net/j72u8Lx5/

как выровнять кнопку «comprar»?

Ответы [ 3 ]

1 голос
/ 19 февраля 2020

Назначьте display: flex также вашим .produto DIV, с flex-direction: column и align-items: center. Затем добавьте margin-top: auto к .comprar_button, чтобы переместить его на дно контейнера (и удалите некоторые другие лишние вещи, см. Ниже):

#content01{
 min-height:500px;
 display: flex;
 flex-wrap: wrap;
}

.produto{
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 20px;
  margin-right: 20px;
  margin-bottom: 20px;
  border: 2px solid #F6F6F6;
  width: 246px;
  text-align: center;
  padding-bottom:10px;
}


.comprar_button {
  background: green;
  padding:10px;
  color: #fff;
  font-weight:bold;
  margin-top: auto;
}

.comprar_button a{
  color: #fff!important;
}

.comprar_button img{
  width: 15px;
  height: 15px;
}
<div id="content01">
    
  <div class="produto">Some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

  <div class="produto">Some text text some text some text some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

  <div class="produto">Some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

  <div class="produto">Some text Some text Some text Some text Some text Some text Some text Some text Some text<br><br><br><b>$ 20.00</b><br><br>
      <br><span class="comprar_button">COMPRAR</span>
  </div>

</div>
1 голос
/ 19 февраля 2020

Это то, что вы хотите? Используется абсолютное положение.

https://jsfiddle.net/usv7jLhm/

.produto{
    position: relative;
    display: inline-block;
    margin-top: 20px;
    margin-right: 20px;
    margin-bottom: 20px;
    border: 2px solid #F6F6F6;
    width: 246px;
    text-align: center;
    vertical-align: top;
    padding-bottom:10px;
}

.comprar_button {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translate(-50%, -50%);
    background: green;
    padding:10px;
    color: #fff;
    text-align:center;
    font-weight:bold;
    vertical-align:bottom;
    align-self: flex-end;
}
0 голосов
/ 19 февраля 2020

используя flex Я прокомментировал изменения, которые я сделал в коде: https://jsfiddle.net/3jenapsb

#content01{
 min-height:500px;
 display: flex;
 flex-direction: row;
 flex-wrap: wrap;
}

.produto{
  
  display: flex;/*added*/
  flex-direction:column;/*added*/
  align-items:center;/*added*/
  margin-top: 20px;
  margin-right: 20px;
  margin-bottom: 20px;
  border: 2px solid #F6F6F6;
  width: 246px;
  text-align: center;
  vertical-align: top;
  padding-bottom:10px;
}

b{
  flex-grow:1;/*added*/
}

.comprar_button {
	background: green;
	padding:10px;
	color: #fff;
	text-align:center;
	font-weight:bold;
	vertical-align:bottom;
	width:150px;/*added*/
}
.comprar_button a{
	color: #fff!important;
}
.comprar_button img{
	width: 15px;
	height: 15px;
}
<div id="content01">

<div class="produto">Some text<br><br><br><b>$ 20.00</b><br><br>
		<br><span class="comprar_button">COMPRAR</span>
</div>
    
<div class="produto">Some text text some text some text some text<br><br><br><b>$ 20.00</b><br><br>
		<br><span class="comprar_button">COMPRAR</span>
</div>

<div class="produto">Some text<br><br><br><b>$ 20.00</b><br><br>
		<br><span class="comprar_button">COMPRAR</span>
</div>

<div class="produto">Some text Some text Some text Some text Some text Some text Some text Some text Some text<br><br><br><b>$ 20.00</b><br><br>
		<br><span class="comprar_button">COMPRAR</span>
</div>
   
   
   </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...