2015-07-23 16 views
5

Tôi đã đoạn mã sau đó về cơ bản là một container có chiều rộng và sau đó được lấp đầy với hình vuông nên có một số lượng tương đương của hình vuông accorss và xuống:Tại sao thùng chứa mất chiều cao 10px?

var container = $('.container'), 
 
    numberOfSquares = 25, 
 
    squareSize = container.width()/numberOfSquares; 
 

 
for (var squares = 0; squares < numberOfSquares * numberOfSquares; squares++) { 
 
    $('<div class="gridSquare"></div>').appendTo(container); 
 
} 
 

 
$('.gridSquare').css({ 
 
    "height": squareSize + "px", 
 
    "width": squareSize + "px" 
 
});
.container { 
 
    width: 960px; 
 
} 
 
.gridSquare { 
 
    background-color: black; 
 
    display: inline-block; 
 
    vertical-align: top; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="container"></div>

Câu hỏi của tôi là lý do tại sao .container mất 10px chiều cao (nếu bạn kiểm tra phần tử chỉ cao 950px), ngay cả khi hình vuông bên trong là hình vuông, có một số bằng nhau theo chiều dọc và chiều ngang và hàng lấp đầy đầy đủ 960px?

Tôi vừa mới kiểm tra và điều này dường như chỉ xảy ra ở chrome

+0

'display: inline-block' thực hiện những điều kỳ lạ. Thử kiểm tra với 'overflow: hidden' trên' .container' và 'float: left' trên' .gridSquare' (nó là 950.391px). –

+0

hoạt động tốt trong firefox, dường như có liên quan đến trình duyệt –

+0

Hình vuông không phải là (luôn luôn) là số tròn. Bạn có thể sử dụng Math.round(), Math.floor() hoặc Math.ceil(). – schellingerht

Trả lời

6

Bởi vì bạn chỉ có thể vẽ ở pixel đầy đủ. Chiều cao của mỗi ô vuông được làm tròn từ 38,4px xuống còn 38px. 25 * 38px = 950px.

+0

à, nhưng tại sao tôi không nhận được khoảng trống 10px hàng ngang của tôi sau đó? – Pete

+0

Bạn có quy tắc css đặt độ rộng thành 960px bất kể là gì. Tuy nhiên, các ô vuông chỉ có chiều rộng 950px. Hoặc trình duyệt thực sự có thể làm cho chúng phù hợp với chiều rộng css. –

+0

tại sao số đó được làm tròn? Tôi không thấy OP sử dụng bất kỳ phương pháp vòng nào. –

Các vấn đề liên quan