Em có 1 câu hỏi thắc mắc ạ. Thiết kế và cắt html , css nên dùng thẻ TABLE hay là thẻ DIV ạ. Khi nào thì dùng table khi nào thì dùng Div, thẻ nào tốt hơn đối với công cụ tìm kiếm?
là người viết web chuyên nghiệp bạn sẽ thấy trong trang web của họ là thẻ div, không thấy xuất hiện thẻ table, vì dân chuyên nghiệp luôn cố gắn tối ưu hóa mã code + thẻ div hỗ trợ nhiều hơn thẻ table
cả 2 thẻ chẳng thẻ nào hỗ trợ công cụ tìm kiếm cả! các thẻ html bản chất nó là xml nhưng được định nghĩa style! bạn dùng thẻ table như thẻ div cũng được chỉ cần style cho nó là table{ display:block; } thế là thẻ table sẽ biến thành thẻ div! Mình nói như vậy là gì ? để bạn hiểu là tùy trường hợp sẽ dùng thẻ nào . chứ nói 1 2 câu mà bạn nắm được html và css thì cần gì phải lập trình. Mình nghĩ bạn nên làm thử 1 giao diện demo bằng thẻ div. vì display:block nó linh hoạt hơn- theo cá nhân mình- Đến một lúc nào đó bạn sẽ tự hiểu ra thôi Chúc bạn thành công!
Chào bạn, Hiện giờ thì chia làm 2 hướng Đối với website thì dùng div : Khi thực hiện các đối tác đều yêu cầu như vậy- vì mang tính rõ ràng và dễ hiệu chỉnh trong css. Yếu tố kế tiếp khi load dữ liệu div load đến đâu hiển thị đến đó ( table thì load hết dữ liệu-> hiển thị). Hiện table vẫn được sử dụng đối với Mail template: Bạn sẽ để ý 1 số mail nhận được có cấu trúc trình bày có hình ảnh, text, image, bên trái phải, footer - đối với mail template phải định hình bằng table (div ko giữ được style trong trường hợp này). Lần đầu đối tác đặt mình làm cái này mình làm div với style inline, và thế là ... được làm lại từ đầu. Table vẫn được sử dụng trong nội dung bài viết article content(ko phải template)- ví dụ hình ảnh và nội dung, hiển thị dữ liệu nhiều cột và row như excel thì vẫn sử dụng. Đây là điều mình rút được từ làm việc và yêu cầu của đối tác.
Có 1 sự nhầm lẫn nhẹ ! ở Dữ liệu và cấu trúc html! Nhét 1 cái ảnh nặng 8MB vào table xem ảnh đó load xong mới hiện hay là hiện dần dần bức ảnh ! he he
Bàn tới bàn lui, mình ngoại đạo nghĩ table load lâu hơn (không phải load hết mới hiển thị) nhưng kẻ bảng dễ hơn. Hơn nữa, Editor trong Joomla mặc định nút kẻ bảng dùng table rồi nên nếu không muốn dùng table thì bạn cần tự chế kiểu kẻ bảng riêng bằng thẻ div. Quan trọng hơn, nếu site bạn "sẽ" lớn thì mới cần hiệu chỉnh kẻ bảng bằng div. Nếu site nhỏ, thì thôi dùng dao thái thịt mà cắt giò vẫn OK. Và mình giống như ý kiến của 2 bạn, email chả cần tối ưu làm gì nên cứ dùng các thẻ HTML cơ bản vd như table chả sao. Miễn là chế email template đừng có quá khủng là OK.
Mình thấy table có thể load chậm, nhưng lại phù hợp khi dữ liệu của bạn không nhiều. Nếu làm bằng % thì width=320px vẫn có thể tùy biến phù hợp kích thước. Còn với dữ liệu nhiều dòng, nhiều cột, lựa chọn div là tốt hơn.
Theo kinh nghiệm của mình thì về mặt bố cục nên dùng thẻ div. Chỉ khi nào liên quan đến trình bày nội dung văn bản mà cần căn chỉnh đẹp một chút thì mới dùng table Với cả mình thấy dùng table nó cứ phải dùng tr với td nhìn code nó không được đẹp
Về mặt mĩ thuật bạn xem cái này: <table cellpadding="0" cellspacing="0" border="0"> <tr> <td colspan="3" height="120px">....</td> </tr> <tr> <td class="menu" valign="top">...</td> <td class="content" valign="top">...</td> <td class="aSide" valign="top">...</td> </tr> <tr> <td colspan="3">...</td> </tr> </table> ---------- hay cái này thích hơn <div id="header">...</div> <div id="menu">...</div> <div id="content">...</div> <div id="aSide">...</div> <div id="footer">...</div>