Newsgroup: it.comp.www.html
Titolo: css: dimensione giusta solo a volte

ciao a tutti.
grazie al suggerimento di babbo natale ho risolto parte del problema.
purtroppo, pero', non al 100%.
succede questo:
[main.css]
...
body.webmaster		{background: #585858;
			font-family: Arial;
			font-size: 9px;
			color: #A0A0A0}
...
body.buttons		{background: #585858;
			font-family: Arial;
			font-size: 13px;
			color: #A8A8A8}
...
[webmaster.html]
...
<body class="webmaster">
<table align="center">
<tr>
   <td align="center" valign="middle">(c) 2003 <a class="webmaster"
href="mailto:
webm...@icem.it
">gianni rondinini</a></td>
</tr>
</table>
...
[buttons.html]
<body class="buttons">
<center>
<table border="0" width="*" cellspacing="0" cellpadding="0" cols="13">
<tr valign="middle">
...
   <td width="*" align="center" valign="middle"><a class="buttons"
href="menu.php?categoria=news"
onclick='top.navbar.document.location="navbar.php?categoria=news";
top.main.document.location="main.php?categoria=news"'>news</a></td>
...
succede questo:
- buttons.html visualizza le scritte nella dimensione giusta. la
dimensione e' quella giusta sia perche' a occhio e' circa quella sia
perche' se modifico il css la dimensione cambia --e quindi viene presa
dal css--
- webmaster.html visualizza le scritte nella dimensione sbagliata:
anziche' 9px e' 13px. se cambio il css non cambia niente.
- webmaster.html visualizza le scritte nella dimensione giusta solo se
faccio una classe td.webmaster {font-size=9px blabla} e ci metto
<td class="webmaster" align="center" valign="middle">(c) 2003 <a
class="webmaster" href="mailto:
webm...@icem.it
">gianni
rondinini</a></td>, cosa che, naturalmente, voglio evitare.
questo avviene con tutti i browser che ho potuto provare --3 versioni
di ie, 2 versioni di mozilla, opera, konqueror e un altro nuovo
browser per linux--.
avete suggerimenti?
ringrazio in anticipo e auguro buone ferie a tutti :)
-- 
Gianni Rondinini
Icem s.r.l.
Tel: 
+39 0545 78036
Fax: 
+39 0545 78727

 ha scritto nel messaggio
news:599kivgv6kjjsi2ab...@4ax.com...
| body.webmaster {background: #585858;
| font-family: Arial;
| font-size: 9px;
| color: #A0A0A0}
| ...
| body.buttons {background: #585858;
| font-family: Arial;
| font-size: 13px;
| color: #A8A8A8}
| ...
|
| [webmaster.html]
| ...
| <body class="webmaster">
| <table align="center">
| <tr>
|    <td align="center" valign="middle">(c) 2003 <a class="webmaster"
| href="mailto:
webm...@icem.it
">gianni rondinini</a></td>
| </tr>
| </table>
Ho provato a testarlo ma, cosě come č scritto non mi funziona.
Nel css al posto di >>body.webmaster<<  e >>body.buttons<<, metti
solo >>.webmaster<< e >>.buttons<< :
cosě a me funziona.
Bye Cico

Gianni Rondinini ha scritto:
| ciao a tutti.
| grazie al suggerimento di babbo natale ho risolto parte del problema.
| purtroppo, pero', non al 100%.
| succede questo:
| [main.css]
| body.webmaster {background: #585858;
| font-family: Arial;
| font-size: 9px;
| color: #A0A0A0}
|
|[...]
| body.buttons {background: #585858;
| font-family: Arial;
| font-size: 13px;
| color: #A8A8A8}
[...]
| [webmaster.html]
| ...
| <body class="webmaster">
[...]
| [buttons.html]
| <body class="buttons">
[...]
| avete suggerimenti?
| ringrazio in anticipo e auguro buone ferie a tutti :)
Ciao Gianni,
    per curiosità ho provato a validare parte del css che hai postato
ed è risultato valido. C'e' una questione di fondo di natura quasi semantica
però: definire una classe per il body non ha senso, e per qualche arcano motivo
i browser sembrano quasi intelligenti nel capirlo.
Ti spiego brevemente il motivo: definire una classe significa che nella pagina
html useremo diversi elementi con lo stile della classe.
Per esempio potrei avere nel css qualcosa del tipo:
p.solidborder{
    border: 1px solid #000;
    }
e nell' html diversi paragrafi del tipo:
<p class="solidborder">
Per il body, che è uno dei tag unici (insieme ad <HTML>) non ha senso definire
una classe tanto sappiamo che sarà unico.
Le soluzioni sono due:
- come ti hanno già suggerito, usare una classe senza specificare che il body ne sarà
il proprietario:
..webmaster{
    /*ecc...*/
    }
..buttons{
    /*ecc...*/
    }
Da notare che quasi tutti gli elementi ereditano le proprietà font-family del body,
e i paragrafi, gli span e i link, le celle delle tabelle anche la dimensione. Quindi il richiamo
alla classe "webmaster" sarà comunque unico... perciò, ecco una soluzione migliore:
- Usare gli id:
body#webmaster{
    /*ecc...*/
    }
body#buttons{
    /*ecc...*/
    }
Nell' html poi specificare: <body id="webmaster"> oppure <body id="buttons">
- Mi chiedevo una cosa: quanto hanno in comune le due pagine html sugli altri stili css usati?
Se la tua risposta è: "poco, quasi niente..." ecco la terza soluzione:
usare due differenti css, o ancora meglio: un css per le parti comuni (per esempio i link e tutte
le classi) e due css uno per pagina per la definizione del body e delle parti differenti, magari usare
il tag <link> per linkare il css comune e la regola @import per i css particolari.
Saluti,
    SantaKlauss

Gianni Rondinini ha scritto:
| ciao a tutti.
| grazie al suggerimento di babbo natale ho risolto parte del problema.
| purtroppo, pero', non al 100%. succede questo:
[..cut..]
Ciao Gianni, un' ultima cosa: un buona norma per sviluppare siti è conservare una
certa consistenza stilistica tra le pagine, devi proprio fare due pagine una con font da 9px
e l' altra da 13px? A parer mio ti conviene definire la stessa dimensione per entrambi i body.
E poi ridefinirla nei div o nei paragrafi in cui ti serve + grande, ancora meglio usare gli em.
Saluti,
    SantaKlauss