Ciao di nuovo samiel! certamente si, non è necessario scrivere 2 volte lo stesso css.
Diciamo che i tuoi blocchi di codice sono 3:
-> uno con le regole comuni tutto il sito (chiamiamolo "common")
-> uno con le regole per le 2 colonne (chiamaiamolo "2 cols")
-> uno con le regole per le 3 colonne (chiamaiamolo "3 cols")
Se vuoi e puoi usare php per gestire le inclusioni mettendo in un unico css "common" e "3 cols" e lo includi sempre ( <link rel="stylesheet" type="text/css" href="3cols.css"> ), poi crei una condizione in php che dice tipo:
codice:
$pages = array ("index.php", "pippo.php", "pluto.php");
if (in_array($_SERVER['REQUEST_URI'], $pages)) {
echo '<link rel="stylesheet" type="text/css" href="2cols.css">';
}
che, quando si verifica la condizione, include 2cols.css che sovrascriverà le parti che ti interessano del css originale... è il modo + "elegante" e semplice.
Si, c'è modo anche di includere 2cols.css direttamente da dentro 3cols.css, ma dovrebbe essere un file css a verificare la condizione e la cosa è un po piu macchinosa.
Puoi anche (non è elegante, ma strafunziona) richiamare il tuo 2cols.css da dentro il body delle pagine a 2 colonne, tipo:
codice:
<body>
....
<link rel="stylesheet" type="text/css" href="2cols.css">
...
</body>
o
codice:
<body>
....
<style>
.colonna1 { width: 300px; }
.colonna2 { width: 500px; }
</style>
...
</body>
in questo caso puoi fare a meno di php.
Siam qui! o/ !