Неизвестно полезный CSS
Неважно, верстаете ли вы сайт для малого бизнеса или создаёте супермодное React приложение. Здесь собраны фишки CSS, которые пригодятся каждому. Что-то, возможно, вы уже знаете, но наверняка тут найдётся для вас что-то новенькое.
В этой подборке про вертикальный текст, clip-path, контрастность текста и не только.
Кстати, это уже 6 подборка советов, остальные вы найдёте в конце статьи.
CodeBase | Frontend | #CSS
Неважно, верстаете ли вы сайт для малого бизнеса или создаёте супермодное React приложение. Здесь собраны фишки CSS, которые пригодятся каждому. Что-то, возможно, вы уже знаете, но наверняка тут найдётся для вас что-то новенькое.
В этой подборке про вертикальный текст, clip-path, контрастность текста и не только.
Кстати, это уже 6 подборка советов, остальные вы найдёте в конце статьи.
CodeBase | Frontend | #CSS
Свойство
flex-grow
определяет, как свободное пространство внутри контейнера делится между дочерними элементами. Оно задаёт коэффициент роста: чем больше значение, тем больше элемент занимает места.
<div class="container">
<div class="item item1">1</div>
<div class="item item2">2</div>
<div class="item item3">3</div>
</div>
<style>
.container {
display: flex;
width: 300px;
border: 1px solid #ccc;
}
.item {
padding: 10px;
color: white;
}
.item1 { flex-grow: 1; background: #007bff; }
.item2 { flex-grow: 2; background: #28a745; }
.item3 { flex-grow: 1; background: #dc3545; }
</style>
CodeBase | Frontend | #CSS
Please open Telegram to view this post
VIEW IN TELEGRAM
position: sticky
в CSS и зачем оно используется?position: sticky
фиксирует элемент внутри его родителя, когда он достигает определённого положения при прокрутке.Это удобно для заголовков, меню и панелей, которые должны оставаться на виду при скролле.
<div class="section">
<h2 class="sticky-title">Заголовок</h2>
<p>Контент...</p>
</div>
<style>
.section {
height: 1500px;
padding: 20px;
}
.sticky-title {
position: sticky;
top: 0;
background: white;
padding: 10px;
border-bottom: 1px solid #ccc;
}
</style>
.section
.CodeBase | Frontend | #CSS
Please open Telegram to view this post
VIEW IN TELEGRAM
Сайтом можно пользоваться не только с использованием мышки, но и при помощи клавиатуры. При переключении клавишей Tab элементу добавляется псевдокласс
:focus
, и мы можем задать для него красивые стили.a:focus {
outline: 2px solid hotpink;
}
CodeBase | Frontend | #css
Please open Telegram to view this post
VIEW IN TELEGRAM
z-index
управляет порядком наложения элементов на странице. Чем больше значение — тем "выше" элемент расположен относительно других.Работает только с элементами, у которых задано
position
(relative, absolute, fixed или sticky).<div class="box box1">Позади</div>
<div class="box box2">Поверх</div>
<style>
.box {
position: absolute;
width: 200px;
height: 100px;
color: white;
padding: 10px;
}
.box1 {
background: #888;
top: 50px;
left: 50px;
z-index: 1;
}
.box2 {
background: #e74c3c;
top: 80px;
left: 80px;
z-index: 2;
}
</style>
.box2
перекрывает .box1
, потому что у неё z-index: 2
.CodeBase | Frontend | #CSS
Please open Telegram to view this post
VIEW IN TELEGRAM