allora ci sono diversi problemi sopratutto di compatibilità tra i diversi browser.
ragioniamo sul caso più semplice e con i browser che leggono correttamente i css.
Crei un div, gli annidi all'interno le due colonne (non ho capito il discorso del bordo, ma se è solo per ottenere un differente colore di bordo assegni due colori diversi) assegni ad ogni colonna un float differente e chiudi il tutto con una riga nascosta a con la quale cancelli i float:
codice:
<div id="principale">
<div class="left"></div>
<div class="right"></div>
<hr />
</div>
il codice css potrebbe essere
codice:
body{text-align:center;margin:30px;}
#principale{margin:0 auto;width:70%;}
.left{float:left; border-left:1px solid #ccc;border-right:1px solid #000}
.left{float:right; border-right:1px solid #ccc;border-left:1px solid #000}
hr{visibility:hidden;clear:both;}
Va bene cosi?