Я только начинаю изучать HTML и CSS с помощью Bootstrap 4 и столкнулся с проблемой.
Я пытаюсь центрировать раздел CTA, который использует функцию гибкости для размещения столбцов. Каким-то образом, несмотря на долгие исследования, мне не удалось найти способ центрировать его, поскольку он всегда кажется немного правее или левее.
Я полагаю, что я что-то упустил, любые направления были бы замечательными, даже если это то, что я могу улучшить.
Вот как это выглядит сейчас с этим HTML:
<div class = "container">
<div class = "row">
<a href = "#"><div class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded"></a>
</div>
<a href = "#"><div class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded"></a>
</div>
<a href = "#"><div class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded"></a>
</div>
</div>
</div>
И этот CSS:
.cta {
margin: 0;
padding: 0;
}
img.cta {
opacity:100; background:white;
-o-transition:opacity .2s ease-out;
-ms-transition:opacity .2s ease-out;
-moz-transition:opacity .2s ease-out;
-webkit-transition:opacity .2s ease-out;
/* ...and now override with proper CSS property */
transition:opacity .2s ease-out;
}
img.cta:hover { opacity:0;}
.cf {
margin: 0;
padding: 0;
}
.cf img {
position:absolute;
-webkit-transition: opacity 0.2s ease-in-out;
-moz-transition: opacity 0.2s ease-in-out;
-o-transition: opacity 0.2s ease-in-out;
transition: opacity 0.2s ease-in-out;
}
.cf img.top:hover {
opacity:0;
}
.cta-text {
}






Здесь может возникнуть проблема с вашим тегом а. Во-первых, он неправильно закрыт.
Попробуйте написать это:
<a href = "#" class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded">
</a>
Во-вторых, я считаю, что всегда лучше иметь его «внутри» div, который вы пытаетесь центрировать, а не снаружи. Это связано с тем, что по умолчанию теги не считаются display: block.
или же
<div class = "cf col-4 d-flex justify-content-center">
<a href='#'>
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
</a>
<a href='#'>
<img class = "cta top" src = "img/home/development.png" class = "rounded">
</a>
</div>
с CSS:
.d-flex > a {
display: inline-block
}
Ваш код неправильно вложен, я думаю, вам следует начать с этого. Для того, чтобы он работал, больше всего соответствуют html-теги.
<div class = "container">
<div class = "row">
<a href = "#">
<div class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded">
</div>
</a>
<a href = "#">
<div class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded">
</div>
</a>
<a href = "#">
<div class = "cf col-4 d-flex justify-content-center">
<img class = "cta bottom" src = "img/home/dev-more.png" class = "rounded">
<img class = "cta top" src = "img/home/development.png" class = "rounded">
</div>
</a>
</div>
Я предлагаю вам представить весь свой html-код. @Дэйвид