Đây là một đầu trầy xước.DOCTYPE ảnh hưởng đến việc hiển thị chiều cao dòng
Tôi đã tạo một nhận xét jsFiddle để chứng minh hiện tượng mà tôi gặp phải gần đây trong khi sử dụng khung công tác Bootstrap của Twitter để tạo một số nút thả xuống.
http://jsfiddle.net/jackwanders/WKvPv/
Về cơ bản, khi sử dụng một HTML5, HTML 4 nghiêm ngặt hoặc XHTML DOCTYPE nghiêm ngặt, nút ám như thiết kế. Tuy nhiên, khi sử dụng HTML4 hoặc XHTML Chuyển tiếp DOCTYPE, nút dấu mũ hiển thị với chiều cao ngắn hơn. Dưới đây là CSS liên quan từ Bootstrap cho <span class="caret">
(i đã gỡ bỏ phong cách mà không thành vấn đề, giống như màu sắc và gradient):
.caret {
display: inline-block;
width: 0;
height: 0;
vertical-align: top;
border-top: 4px solid #000000;
border-right: 4px solid transparent;
border-left: 4px solid transparent;
content: "";
}
.btn .caret {
margin-top: 7px;
margin-left: 0;
}
.btn {
display: inline-block;
*display: inline;
padding: 4px 10px 4px;
margin-bottom: 0;
*margin-left: .3em;
line-height: 18px;
*line-height: 20px;
text-align: center;
vertical-align: middle;
}
Tại sao DOCTYPE ảnh hưởng đến chiều cao của nút? Nếu line-height
được đặt thành 18px, tại sao chiều cao sẽ nhỏ hơn 18px?
PS - Vâng, tôi biết rằng Bootstrap đòi hỏi HTML5, nhưng tôi muốn tưởng tượng đó là đối với HTML5 tính năng sử dụng, không phải như thế nào DOCTYPE làm cho phong cách CSS
DOCTYPE chuyển tiếp kích hoạt chế độ gần như tiêu chuẩn, về cơ bản là chế độ tiêu chuẩn với một vài chế độ quirks. Vì điều này có liên quan đến mô hình hộp, bạn * có thể * đang chạy vào một trong những điều kỳ quặc đó, nhưng tôi không biết chắc chắn ... – BoltClock
Gần đây tôi đã xem [trang Microsoft này] (http: // msdn. microsoft.com/en-us/library/ff405794%28v=vs.85%29) mô tả sự khác biệt xử lý chiều cao dòng của chế độ gần như tiêu chuẩn. Tôi thảo luận về nó trong [câu trả lời này] (http://stackoverflow.com/questions/11206730/html5-vs-html4-h1-tag-rendered-with-extra-space-how-to-remove/11217791#11217791) cũng có liên quan đến câu hỏi của bạn. Đặc biệt, nó là sự vắng mặt của việc xử lý các strut gây ra sự khác biệt mà bạn nhìn thấy. – Alohci
Chỉ cần nhấn vấn đề này. nó là năm 2016 bên ngoài, nhưng chúng tôi vẫn đang đối phó với các vấn đề tương tự :(cảm ơn bạn đã trả lời của bạn anyway! – vmg