Cách dứt khoát là gì để bắt chước chiều rộng tối thiểu của thuộc tính CSS trong Internet Explorer 6? Tốt hơn là không thử?Chiều rộng tối thiểu trong MSIE 6
Trả lời
foo { min-width: 100px } // for everyone
* html foo { width: 100px } // just for IE
(hoặc phục vụ cho một stylesheet riêng biệt để sử dụng IE conditional comments)
làm thẻ css của bạn dưới dạng _Width: 500px hoặc bất kỳ thứ gì.
này hoạt động khá tốt ...
div.container {
min-width: 760px;
width:expression(document.body.clientWidth < 760? "760px": "auto");
}
CSS đó sẽ không xác nhận các tiêu chuẩn W3C. Ngoài ra, nó có thể gây ra các hiệu ứng không mong muốn [http://www.456bereastreet.com/archive/200611/ie_expressions_ignore_css_media_types]. Ngoài ra, CSS chỉ nên có bản trình bày chứ không phải hành vi. –
Ai quan tâm nếu nó sẽ xác thực hay không, công cụ này có thể làm hỏng trình duyệt của người dùng. Nó rất dễ dàng để kết thúc trong một tình huống vòng lặp vô hạn, vì các biểu thức được đánh giá trên hầu như tất cả các sự kiện, chẳng hạn như các sự kiện reflow, và biểu hiện chính nó cũng gây ra một reflow. Nếu không được chăm sóc đặc biệt, sự kiện reflow có thể bong bóng trở lại phần tử mà biểu thức được ràng buộc. – Svend
Đúng, mã này có tiềm năng thực sự cho thảm họa. Nó cần phải kiểm tra xem chiều rộng có nhỏ hơn bảy trăm sáu mươi - ** một ** hay không. –
This article trên CSS Play, bởi Stu Nicholls, cho thấy các phương pháp khác nhau cho đạt được độ rộng tối thiểu trong IE, trong tất cả các chế độ (Quirks, vv) và thậm chí cho IE/Mac.
+1 Tôi lớn lên trên CSS Play. Trang web tuyệt vời. – pixelbobby
Bạn có thể sử dụng biểu thức (như đề xuất của HBoss), nhưng nếu bạn lo lắng về hiệu suất thì cách tốt nhất để làm điều này là thêm một phần tử bên trong phần tử bạn muốn áp dụng chiều rộng tối thiểu.
<div id="container">
The "shim" div will hold the container div open to at least 500px!
You should be able to put it anywhere in the container div.
<div class="shim"> </div>
</div>
#container .shim {
width: 500px;
height: 0;
line-height: 0;
}
Điều này yêu cầu đánh dấu không phải ngữ nghĩa nhưng thực sự là giải pháp đa trình duyệt và không yêu cầu sử dụng biểu thức.
Đẹp, rất xảo quyệt –
Nghịch ngợm: Sự lôi cuốn là đứng cho không phá vỡ không gian trong mã của bạn mà bạn đã có &nsbp; –
Tốt bắt! Hai năm rưỡi sau khi nó được xuất bản! – Prestaul
Min-height fast hack công trình cho tôi (cũng làm việc cho chiều rộng)
Sử dụng ý kiến có điều kiện để tham khảo và MSIE 6 style sheet cụ thể, sau đó tạo ra CSS như dưới đây.
trình duyệt Compliant sẽ sử dụng:
min-width: 660px;
Sau đó MSIE 6 sẽ sử dụng:
width: expression((document.body.clientWidth < 659)? "660px" : "auto");
Xem câu trả lời của Hugoware về lý do tại sao các biểu thức làm điều này là xấu. – Svend
Tôi đã fiddled với tất cả các câu trả lời đưa ra ở đây trong tháng qua. Và sau khi chơi với phương pháp của Pretaul (Min-width in MSIE 6), nó có vẻ là giải pháp thay thế tốt nhất cho chiều rộng tối thiểu. Không có hack hoặc bất cứ điều gì, chỉ cần thẳng lên mã CSS tuân thủ trong đó mất 30 giây để thực hiện.
Từ Googling xung quanh, các biểu thức có vẻ là phổ biến nhất. Đối với tôi anyways, ittended để ngẫu nhiên khóa lên trình duyệt của tôi (cả IE và FF).
Ví dụ giả định là tốt để buộc trình duyệt hiển thị thanh cuộn ngang khi vùng chứa đến một kích thước nhất định nhưng bạn sẽ nhận thấy rằng nội dung trong vùng chứa sẽ vẫn được thay đổi kích thước khi cửa sổ nhỏ hơn. Tôi tưởng tượng rằng đây không phải là mục tiêu chung khi cố gắng để đạt được chiều rộng tối thiểu trong IE 6.
Bên cạnh đó, việc sử dụng các biểu thức và hacks điên CSS khác chỉ không phải là thói quen tốt. Chúng không an toàn và ô uế. Điều này article giải thích các caveats của hacks CSS và lý do tại sao họ nên tránh hoàn toàn.
Cá nhân tôi coi bài đăng của scaryjeff là lời khuyên tốt nhất để đạt được độ rộng tối thiểu thực trong IE6 và là nhà phát triển bố cục CSS có kinh nghiệm tôi chưa tìm được giải pháp tốt hơn.
article trên CSS Play, bởi Stu Nicholls, hiển thị các phương pháp khác nhau để đạt được chiều rộng tối thiểu trong IE, ở tất cả các chế độ (Quirks, vv) và thậm chí cho IE/Mac.
Tôi đã cung cấp câu trả lời cho một câu hỏi tương tự chi tiết việc sử dụng kỹ thuật này để đạt được độ chính xác tối thiểu. Nó có thể được xem tại đây:
CSS: Two 50% fluid columns not respecting min width
Kỹ thuật này rất đơn giản, CSS hợp lệ mà có thể được sử dụng trong hầu hết các tình huống. Áp dụng cho ví dụ shim ở trên nó kết quả trong những gì tôi cho là đúng chức năng min-width.
I dunno, tôi đã có một số thành công với:
min-width: 193px;
width:auto !important;
_width: 193px; /* IE6 hack */
Một sự kết hợp của Dustin diaz' min-height nhanh Hack & How do I specify in HTML or CSS the absolute minimum width of a table cell
nút đơn dòng
button{
background-color:#069;
float:left;
min-width:200px;
width:auto !important;
width:200px;
white-space: nowrap}
- 1. Sử dụng chiều rộng và chiều rộng tối thiểu
- 2. Cấu hình IE nào chứa "MSIE 8" và "MSIE 6"?
- 3. Chiều rộng tối thiểu trong đổi kích thước cửa sổ
- 4. Chiều rộng tối thiểu CSS trong IE6, 7 và 8
- 5. Cách mô phỏng chiều rộng tối thiểu trong IE8
- 6. Đặt chiều rộng cột tối thiểu thành chiều rộng tiêu đề trong PyQt4 QTableWidget
- 7. Safari và Chrome bỏ qua CSS chiều rộng tối thiểu
- 8. Chiều rộng tối thiểu của cột bảng đầu tiên
- 9. Thuộc tính chiều rộng CSS tối thiểu không hoạt động
- 10. Tìm kiếm chuỗi nhị phân - chiều rộng thùng tối thiểu?
- 11. Cách đặt chiều rộng tối thiểu với kích thước nền
- 12. OS X Accessibility API Chiều rộng tối thiểu
- 13. Chiều rộng tối thiểu và chiều cao tối đa cho thuộc tính bảng
- 14. CSS: Mô phỏng chiều rộng linh hoạt (không có chiều rộng tối thiểu) -
- 15. Chiều rộng và chiều rộng tối thiểu của jQuery: Cách xóa px?
- 16. Cột bảng, thiết lập cả chiều rộng tối thiểu và tối đa với css
- 17. thiết lập chiều rộng tối thiểu và chiều cao cho mỗi gridster.js phụ tùng
- 18. Cần làm rõ Flex: width, min (max) Chiều rộng, chiều rộng, chiều rộng tối đa, chiều rộng, độ rộngMặc định (Max) Chiều rộng, độ rộngWidth, measuredMinWidth, percentWidth
- 19. Twitter bootstrap chiều rộng tối thiểu trong cách bố trí đáp ứng
- 20. Chiều rộng tối đa CSS trong IE8
- 21. Chiều rộng CSS/Chiều rộng tối đa trên Line Wrap?
- 22. Kích thước/chiều rộng tối thiểu của QPushButton được tạo từ mã
- 23. Bố cục bảng: cố định bỏ qua chiều rộng tối thiểu của td
- 24. Làm cách nào để đặt chiều rộng tối thiểu tự động trên cột bằng css?
- 25. gtk kích thước tối thiểu
- 26. Firefox: kích thước hộp và chiều cao tối thiểu
- 27. không thể làm chiều rộng tối đa
- 28. CSS: Căn giữa, chất lỏng trái, cố định bên phải, bố cục nguồn được sắp xếp với chiều rộng tối thiểu/tối thiểu
- 29. Cách đặt chiều cao tối thiểu của QListWidgetItem?
- 30. chiều cao tối thiểu không hoạt động với nội dung
Điều này không cung cấp chiều rộng tối thiểu trong IE. Bạn đang có hiệu quả chỉ cần bỏ trên IE ... – Prestaul
Prestaul, IE6 xử lý chiều rộng như min-width. – Magnar
Sự hiểu biết của tôi là điều này sẽ hoạt động trong IE6, nhưng không phải IE7: http://blog.throbs.net/2006/11/17/IE7+And+MinWidth+.aspx – Prestaul