Middle
Екі ішкі блок A және B берілген өлшемдермен. B блогын A блогының дәл ортасына қалай орналастыруға болады? Flexbox қолдаусыз ескі браузерлер үшін шешімдерді қоса алғанда бірнеше нұсқаны ұсыныңыз.
sobes.tech AI
AI-дан жауап
Бөлім B-ны A блогының дәл ортасына орналастыру үшін бірнеше әдісті қолдануға болады:
1. Flexbox (заманауи әдіс)
.parent {
display: flex;
justify-content: center; /* көлденең бағытта */
align-items: center; /* тік бағытта */
width: 300px; /* мысал */
height: 200px; /* мысал */
}
.child {
width: 100px;
height: 50px;
}
2. Абсолюттік позициялау және трансформация
.parent {
position: relative;
width: 300px;
height: 200px;
}
.child {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 100px;
height: 50px;
}
3. Кесте арқылы туралау (ескі браузерлер үшін)
.parent {
display: table;
width: 300px;
height: 200px;
text-align: center;
}
.child {
display: table-cell;
vertical-align: middle;
width: 100px;
height: 50px;
margin: 0 auto;
}
4. line-height қолдану (блоктың биіктігі тұрақты және мәтіндік мазмұн болса)
.parent {
width: 300px;
height: 200px;
line-height: 200px; /* ата-ананың биігіне тең */
text-align: center;
}
.child {
display: inline-block;
vertical-align: middle;
line-height: normal;
width: 100px;
height: 50px;
}
5. margin auto қолдану (тек көлденең бағытта)
.child {
width: 100px;
height: 50px;
margin: auto;
position: relative;
top: 50%;
transform: translateY(-50%);
}
Ескі браузерлерді қолдау үшін flexbox-сыз абсолюттік позициялау мен трансформация немесе кесте арқылы туралау жақсырақ. Flexbox — заманауи браузерлер үшін ең қарапайым және әмбебап әдіс.