Positioning text and images on a site grid I've just started learning HTML and CSS. Currently I'm creating a test site to practice with.

I'm just after an early idea if the principles I'm using are correct. The below is an snippet from the main body of my HTML code. It's just about positioning text and images on a grid at the moment. I seem to be using a lot of divs with IDs in the CSS for styling etc.

Some of the alt text is work in progress and repeated currently hence why it repeats.

Can someone tell me if the structure is ok, or not and what I'd need to do to change this?


        
    

&lt;div id="topmenu" class="grid_4"&gt;
    &lt;a href="www.bbc.com"&gt;About Us &amp;nbsp &amp;nbsp&lt;/a&gt;&lt;a href="www.bbc.com"&gt;Our Cheeses &amp;nbsp &amp;nbsp&lt;/a&gt;&lt;a href="www.bbc.com"&gt;Contact Us&lt;/a&gt;
&lt;/div&gt;

&lt;div id="quote_one" class="grid_4"&gt;
    &lt;p&gt;"QUOTE 1 - We really love the taste of your cheese, we will be back for more"&lt;/p&gt;
&lt;/div&gt;

&lt;div id="logo" class="grid_4"&gt;
    &lt;img src="logo.jpg" alt="This is the company logo"&gt;
&lt;/div&gt;

&lt;div id="quote_two" class="grid_4"&gt;
    &lt;p&gt;"QUOTE 2 - We really love the taste of your cheese, we will be back for more"&lt;/p&gt;
&lt;/div&gt;
a) Don’t use &amp;nbsp &amp;nbsp to separate the navigation links. You could use ul instead (and style it with CSS display:inline; if required):

&lt;ul&gt;
  &lt;li&gt;&lt;a href="…"&gt;About Us&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="…"&gt;Our Cheeses&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href="…"&gt;Contact Us&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


b) div has no meaning. You should only use div if there is no other appropriate, "narrower" element. If you are quoting something, use blockquote. If you have a navigation menu, use nav. Of course you can use div in addition to those appropriate elements, if needed.

c) This is not an error, but an opinion-based advice: If you don’t have a strong reason, don’t add id attributes just because you need a styling hook. You could use the class attribute even for what some call "unique" elements. Good reasons to use id are: in-page links (fragment identifier) and, sometimes, JavaScript hooks.