<div> is more convenient and much faster, only total noobs use tables for layout. Tables are for... tables, i.e. tabulated data, so they do have a place within websites. Where there's a need for lists in columns and rows, there's no point in being a table nazi and trying to do it all with divs. However, there's no point bloating your website with loads of useless td, tr and table tags just to make a header, body, footer, left column, right column etc.
@marshal : it depend on what context you want to use it? if its for layouts, DIV is more appropriate. If you want to present tabular data then TD ( or more precisely TABLE ) is the best pick. Google for "semantic html markup" to start reading on how to code HTML Properly. hope it helps
using divs is better because it produces less HTML code. However, getting the CSS to act the way you want can be a challenge.
DIV is more flexible and less code required to achieve the same result. DIVS also give you more control how how things should look. But it does take more time to decorate it and require more testing with different browser, such as Firefox, IE and Chrome. Different tests need to be done with different version of those browser as well as Operating system. A page could look different if you view it on a Mac with Firefox or on Windows with Firefox and you use DIVs on you site.
tables arent as bad as many people claim they are much more useful than divs when creating standard, cms website with many modules
Table code leave HTML very messy and confusing. Div's are the way forward on this one! (thats of course if it is for layouts and not table data like mentioned above)
If you're not afraid of choking your code a little, there's no reason to avoid using tables per se (unless of course you're looking to change content regularly, in which case divs are less likely to get all messy after a while. Mind you, if you're a little careless with code, then a poorly placed div (or an unclosed one) is more likely to cause BIG problems than a table. I guess it really depends what you want to use them for ...
the tag<td> is used by the most users but the table data is used to insert the data on the table same as we insert in to the site page but the <div> tag is more faster and convinenent to use
Absolutely not. Tables are terrible for page layout. If you're using tables for layout you are going to experience real delays on pageloads, especially if someone is browsing with a mobile device. The reason for this is that tables have to be completely loaded before they can be rendered, so if your page uses a table to contain the layout, and then further tables to display different parts, the entire page (every single table) has to be loaded before the browser can begin to render it - not a good thing at all.
The <td> tag defines a standard cell in an HTML table. An HTML table has two kinds of cells: 1) Header cells - contains header information (created with the th element) 2) Standard cells - contains data (created with the td element) The <div> tag defines a division or a section in an HTML document. <td> is used under <table> tag. to create new row. while <div> controls entire page.
<table> should never be used for layouts only for actual data that looks like a table. Also rendering is way faster with <div>s