E' una vita che non uso i frames, ma siccome questa è una di quelle volte in cui non ne posso fare a meno (per contratto), ci sto sbattendo il grugno.
Dopo aver molto cercato, e dopo aver molto studiato, e infine, dopo aver molto guardato, mi chiedo?
Se gli attributi border e frameborder appartengono all'elemento frame, ma come mai se li applico border non ha effetto.
Mentre se lo applico a frameset funziona.
Gli esempi sia su html.it [1] che su w3school [2] sono contrastanti, e nelle traduzioni di Diodati [3], frameborder è riportato per il solo elemento frame e non frameset.
Se provo a dare border a frameset , il validatore mi da giustamente errore. Daltronde se non do border='0' al frameset i frame mi vengono col bordino, indipendentemente
dal fatto che esista o no l'attributo frameborder nell'elemento frame. Come fare?
Fogli di stile:
Come si vede dal codice che ho postato qui sotto, ho provato a definire un piccolo foglio di stile per il frameset, ma nulla.
Daltronde anche se sia frameset che fram supportino l'attributo style, i fogli di stile non supportano l'elemento frameset e frame.
Ho provato a passare da una DTD xhtml ad una html (tutte frameset ovviamente), l'errore è sempre quello.
Anche gli esempi di HTML.IT danno lo stesso errore, quindi come faccio?
Marco.
[1]:http://www.html.it/guida/html_39.htm
[2]:http://www.w3schools.com/tags/tag_frameset.asp
[3]:http://www.diodati.org/w3c/html401/present/frames.html
codice:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='it' lang='it' dir='ltr'>
<head>
<title>UFP :: Public Zone</title>
<meta http-equiv='content-type' content='text/html; charset=iso-8859-1' />
<style type='text/css' media='screen'>
.righe {
margin: 0;
padding: 0;
border: none;
}
</style>
</head>
<frameset class='righe' rows='250, *'>
<frameset class='righe' cols='120, *'>
<frame src='public/menu-alto.php' name='menu-alto' noresize scrolling='no' frameborder='0' border='0' />
<frame src='public/testo-alto.php' name='testo-alto' noresize scrolling='auto' frameborder='0' border='0' />
</frameset>
<frameset class='righe' cols='120, *'>
<frame src='public/menu-basso.php' name='menu-basso' noresize scrolling='no' frameborder='0' border='0' />
<frame src='public/testo-basso.php' name='testo-basso' noresize scrolling='auto' frameborder='0' border='0' />
</frameset>
<noframes>
<body>
Questo sito utilizza i frames, ... da definire poi.</p>
</body>
</noframes>
</frameset>
</html>
Ciò che non voglio far venire: