Сегодня я пришел в дискуссию, где мне интересно, какой самый эффективный способ иметь двух div рядом друг с другом.
С одной стороны, мне нравится использовать display:flex;
, с другой стороны есть возможность использовать calc()
, причина в том, что наш div имеет отступы, и нам нужно уменьшить ширину с помощью дополнения. Корпус:
<div class='container'>
<div class='inner'></div>
<div class='inner'></div>
</div>
Оба должны быть на 50% ширины. По умолчанию css:
* {
-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
-moz-box-sizing: border-box; /* Firefox, other Gecko */
box-sizing: border-box; /* Opera/IE 8+ */
}
.container {
height: 100%;
width: 100%;
}
.inner {
width: 50%;
padding: 20px;
}
Способ display:flex;
будет дополнительным:
.container {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-wrap: nowrap;
align-items: stretch;
align-content: stretch;
}
calc()
:
.inner {
width: calc(100% - 40px);
display: inline-block;
}
или
.inner {
width: calc(100% - 40px);
float: left;
}
Мне не нужна таблица в моем CSS. Кроме того, нам не нужно заботиться о версиях браузера, это должно быть функциональным только в последних версиях.
Что было бы рекомендовано использовать? Что больше производительности?
Я уже нашел статью о том, что производительность уже значительно увеличена. Ссылка