Nếu bạn chỉ phải hỗ trợ các trình duyệt hỗ trợ transform
(hoặc nhà cung cấp phiên bản tiền tố), hãy sử dụng thủ thuật cũ kỳ lạ này để căn chỉnh các phần tử theo chiều dọc.
#child {
position: relative;
top: 50%;
transform: translateY(-50%);
}
Nếu bạn phải hỗ trợ các trình duyệt cũ, bạn có thể sử dụng kết hợp trong số này, nhưng họ có thể là một nỗi đau do sự khác biệt trong việc cung block
vs table
.
#parent {
display: table;
}
#child {
display: table-cell;
vertical-align: middle;
}
Nếu chiều cao của bạn là cố định và bạn cần phải hỗ trợ những, trình duyệt pesky thực sự cũ ...
#parent {
position: relative;
}
#child {
height: 100px;
position: absolute;
top: 50%;
margin-top: -50px;
}
Nếu chiều cao của bạn chưa được khắc phục, có một workaround.
See it on jsFiddle.
tôi đã thử google ...cảm ơn sự giúp đỡ của bạn – trrrrrrm
kiểm tra câu trả lời của tôi để xem nó có phù hợp với bạn không .. @ra_htial .... yeah lứa tuổi câu hỏi cũ, nhưng vẫn là một trong những khó khăn cần được làm rõ – juanm55
có thể trùng lặp của [Làm thế nào để theo chiều dọc trung tâm một div cho tất cả trình duyệt?] (http://stackoverflow.com/questions/396145/how-to-vertically-center-a-div-for-all-browsers) – Carpetsmoker