posicionamiento Flexbox

votos
0

Estoy tratando de posicionar un div en el medio de la página y el otro hasta el final.

Tengo esto, pero yo no soy capaz de posicionar el primero en el centro.

He tratado de establecer diferentes auto aling a la content_text pero ninguno de los que he intentado trabajo.

Espero que ustedes puedan ayudarme. :)

html,body{
  height:100%;
  margin:0;
}

.content {
  align-items: center;
  background: rgb(0, 0, 0); /* Fallback color */
  background: rgba(0, 0, 0, 0.5); /* Black background with 0.5 opacity */
  color: #f1f1f1; /* Grey text */
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: space-between;
  position: absolute; /* Position the background text */
  width: 100%; /* Full width */
}

/* HELPERS */

.img-bg {
  display:block;
  height:100%;
  object-fit: cover;
  width:100%;
}
<!doctype html>
<html class=no-js lang=en dir=ltr>
  <head>
    <meta charset=utf-8>
    <meta http-equiv=x-ua-compatible content=ie=edge>
    <meta name=viewport content=width=device-width, initial-scale=1.0>
    <title>Iraitz Puente</title>
  </head>
  <body>
    <div class=row fullWidth>
      <div class=content>
        <div class=content_text>
          <h1>THIS MUST BE CENTERED</h1>
        </div>
        <div class=content_arrow>
          <h1>END</h1>
        </div>
      </div>
    </div>
  </body>
</html>

Publicado el 18/12/2018 a las 11:09
fuente por usuario
En otros idiomas...                            


4 respuestas

votos
1

Si se establece el contenta justify-content: flex-end;, a continuación, se puede aplicar absoluteposicionamiento al elemento que necesita ser centrado y luego centrarla usando una combinación de top: 50%y transform: translateY(-50%);:

html,body{
  height:100%;
  margin:0;
}

.content {
  align-items: center;
  background: rgb(0, 0, 0); /* Fallback color */
  background: rgba(0, 0, 0, 0.5); /* Black background with 0.5 opacity */
  color: #f1f1f1; /* Grey text */
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: flex-end;
  position: absolute; /* Position the background text */
  width: 100%; /* Full width */
}

.content_text {
position: absolute;
top: 50%;
transform: translateY(-50%);
}

/* HELPERS */

.img-bg {
  display:block;
  height:100%;
  object-fit: cover;
  width:100%;
}
<!doctype html>
<html class="no-js" lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="x-ua-compatible" content="ie=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Iraitz Puente</title>
  </head>
  <body>
    <div class="row fullWidth">
      <div class="content">
        <div class="content_text">
          <h1>THIS MUST BE CENTERED</h1>
        </div>
        <div class="content_arrow">
          <h1>END</h1>
        </div>
      </div>
    </div>
  </body>
</html>

Respondida el 18/12/2018 a las 11:14
fuente por usuario

votos
0

basta con quitar el position: absoluteestilo de la clase .Este contenido

Respondida el 18/12/2018 a las 11:15
fuente por usuario

votos
-2
<style>
.content {
    align-items: center;
    background: rgb(0, 0, 0);
    background: rgba(0, 0, 0, 0.5);
    color: #f1f1f1;
    display: flex;
    flex-direction: column;
    height: 100vh;
    justify-content: center;
    position: absolute;
    width: 100%;
}
.contact .content_text,.contact .content_arrow{
    margin-top: auto;
}
</style>
Respondida el 18/12/2018 a las 11:17
fuente por usuario

votos
0

html,body{
  height:100%;
  margin:0;
}

.content {
  background: rgb(0, 0, 0); /* Fallback color */
  background: rgba(0, 0, 0, 0.5); /* Black background with 0.5 opacity */
  color: #f1f1f1; /* Grey text */
  display: flex;
  flex-direction: column;
  height: 100vh;
  justify-content: center;
  align-items: center;
  width: 100%; /* Full width */
}

/* HELPERS */

.img-bg {
  display:block;
  height:100%;
  object-fit: cover;
  width:100%;
}
<!doctype html>
<html class="no-js" lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="x-ua-compatible" content="ie=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Iraitz Puente</title>
  </head>
  <body>
    <div class="row fullWidth">
      <div class="content">
        <div class="content_text">
          <h1>THIS MUST BE CENTERED</h1>
        </div>
        <div class="content_arrow">
          <h1>END</h1>
        </div>
      </div>
    </div>
  </body>
</html>

Respondida el 18/12/2018 a las 11:20
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more