ci sono diversi workaround per fare ciò che chiedi. Ad esempio con i browser che supportano nth-child potresti azzerare il margine di destra a tutti blocchi in posizione pari
div#contenitore:nth-child(even) {
margin-right: 0;
}
non potendo contare su un supporto decente di questa pseudoclasse usiamo un altro modo
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it" xml:lang="it">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>xhtml 1.0</title>
<style>
#contenitore {
margin : 0 auto;
width : 850px;
background : #d8d8d8;
overflow : hidden;
}
.bloccorosso {
width : 400px;
margin : 0 50px 20px 0;
float : left;
display : inline;
background : #d12420;
}
#wrapper {
height : auto;
overflow : hidden;
width : 900px;
}
</style>
</head>
<body>
<div id="contenitore">
<div id="wrapper">
<div class="bloccorosso">...</div>
<div class="bloccorosso">...</div>
<div class="bloccorosso">...</div>
<div class="bloccorosso">...</div>
<div class="bloccorosso">...</div>
<div class="bloccorosso">...</div>
<div class="bloccorosso">...</div>
</div>
</div>
</body>
</html>