2012-11-03 38 views
12

Rất nhiều đánh dấu HTML nhân dân trông như thế này:Chúng ta có nên đặt chiều rộng trên bao bì div # hoặc <body> không?

<html> 
    <body> 
    <div id="wrapper"> 
     <p>Stuff in here</p> 
    </div> 
    </body> 
</html> 

Và phần lớn thời gian trong ví dụ ở đây, hoặc trên web, người ta gợi ý rằng bạn nên áp dụng các thiết lập chiều rộng đến #wrapper, thay vì <body>.

Có lý do cơ bản nào cho điều đó không?

Ví dụ, trong một bài viết về techniques for gracefully degrading media queries, và cung cấp cho bạn một số bối cảnh trên Kỹ thuật 1: Không làm gì:

Con voi trong phòng là Internet Explorer cho desktop. Với giải pháp di động đầu tiên, màn hình lớn sẽ hiển thị nội dung trong một cột, dẫn đến trải nghiệm đọc đau đớn cho người dùng, cách vượt quá mức tối đa được thiết lập để tạo sự thoải mái: 50 đến 75 ký tự. Có thể đáng để đặt thuộc tính chiều rộng tối đa trong vùng chứa chính của bạn và sau đó tăng chiều rộng tối đa đó trong truy vấn phương tiện.

Và CSS của họ:

#wrapper { 
_width: 460px; /* Take that, IE6! */ 
max-width: 460px; 
} 

@media only screen and (width) { 

#wrapper { 
    max-width: 1200px; 
} 
} 

Dưới đây là how it'd come together for IE (query phương tiện truyền thông là nhận xét ra).

Sẽ có bất kỳ sự khác biệt nào thay vì áp dụng điều đó cho #wrapper, chúng tôi sẽ áp dụng nó cho <body> - với trang web tiêu chuẩn trong đầu?

Bất kỳ lỗi nào có thể xảy ra? I tried it here và có vẻ như không sao. Chỉ cần điều gì xảy ra nếu bố cục được nâng cao hơn ...

+1

Không có lý do thực sự nào để có một trình bao bọc nữa vào những ngày này. – BoltClock

+0

Số liệu. Nhưng làm thế nào đến? – Baumr

Trả lời

4

Vâng, bạn muốn sử dụng càng ít phần tử càng tốt. Tuy nhiên, có nhiều trường hợp # trình bao bọc trang và nội dung không thể hoán đổi cho nhau. Trong nhiều trường hợp, bạn cần sử dụng phần thân làm màu nền thay cho thẻ html. Trong những trường hợp này, bạn cần cơ thể để kéo dài html và bạn cần một trình bao bọc để chứa nội dung, có thể tập trung vào nội dung, và buộc cơ thể căng ra và chứa nó.

Vì vậy - tôi đoán tôi sẽ nói rằng hầu hết mọi người sử dụng trình bao bọc bởi vì họ thấy nó trong lớp học đầu tiên hoặc hướng dẫn trực tuyến. Tôi nghĩ rằng đối với hầu hết các phần, nó là một thói quen cho nhiều người. Tôi sẽ rời khỏi cơ thể như là và lề wrapper 0 tự động và sử dụng một chiều rộng tối đa như bạn có. Nó chỉ là EI 8 và trước đó - can I use media queries ? - có lẽ bạn nên phát hiện EI 8 và tạo một bảng định kiểu duy nhất. Tôi thấy rằng sau khi xác định mọi thứ cho mobil, truy vấn phương tiện của tôi chỉ là một vài dòng lặp lại sau đó -

+1

+1 cho "bởi vì họ nhìn thấy nó trong lớp học đầu tiên của họ". Tôi biết với tôi đó là một người đam mê bởi vì khách hàng luôn luôn có xu hướng thay đổi tâm trí của họ một cách nào đó và nó dễ dàng hơn để có trong hơn có ra và fiddle về với nó sau này và tất nhiên, tôi đã học nó theo cách đó! –

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