Tôi không chắc liệu điều này có khả thi hay không, nhưng tôi nghĩ nó sẽ tuyệt vời khi sử dụng các biến đổi CSS để tạo hiệu ứng trong đó div mở rộng từ trung tâm chiều cao và chiều rộng, thay vì chỉ từ góc trên bên trái.Mở rộng div từ giữa thay vì chỉ trên cùng và bên trái bằng cách sử dụng CSS
Ví dụ, nếu tôi có (demo)
<div id="square"></div>
và (tiền tố nhà cung cấp bỏ qua cho ngắn gọn)
#square {
width: 10px;
height: 10px;
background: blue;
transition: width 1s, height 1s;
}
#square:hover {
width: 100px;
height: 100px;
}
On di chuột, điều này sẽ mở rộng hình vuông bên phải và xuống 100px. Tôi muốn mở rộng từ giữa.
Tôi biết rằng tôi có thể sử dụng transform: scale(x)
(demo), nhưng điều này thực sự không cung cấp cho tôi bố cục "pixel hoàn hảo" (vì nó dựa trên phần trăm) và cũng không ảnh hưởng bố trí xung quanh (làm cho các yếu tố khác trong luồng tài liệu điều chỉnh theo kích thước của nó). Đây là bản chất tôi muốn làm, ngoại trừ dòng tài liệu bị ảnh hưởng tương ứng.
Có ai biết cách thực hiện điều này mà không có javascript không?
tôi nghĩ rằng bạn sẽ cần javascript hoặc jQuery todo những gì bạn muốn – ONYX