Gần đây tôi refactored một số CSS của tôi và đã ngạc nhiên khi thấy một cách dễ dàng hơn để nằm ngang gắn kết yếu tố hoàn toàn vị trí của tôi:Tại sao "trái: 50%, chuyển đổi: dịchX (-50%)" nằm ngang giữa phần tử?
.prompt-panel {
left: 50%;
transform: translateX(-50%);
}
này hoạt động tuyệt vời! Ngay cả khi chiều rộng của phần tử của tôi là tự động. Tuy nhiên, tôi không hiểu những gì đang xảy ra để làm cho điều này thực sự hiệu quả. Giả thiết của tôi là dịchX chỉ là một phương tiện hiện đại, hiệu quả hơn trong việc di chuyển một phần tử xung quanh, nhưng điều đó dường như không đúng.
Hai giá trị này có nên hủy lẫn nhau không? Ngoài ra, tại sao
.prompt-panel {
left: -50%;
transform: translateX(50%);
}
không hiển thị kết quả tương tự như đoạn mã đầu tiên?
tin cùng làm việc cho trái và margin-left – Sunand
Nope Sunand, xem fiddle này: http://jsfiddle.net/xrb32Lq8 /. Và thậm chí sau đó, –
được giải thích tại đây: http: // stackoverflow.com/q/36817249/3597276 –