- From: Christian Wolfgang Hujer <Christian.Hujer@itcqis.com>
- Date: Mon, 10 Dec 2001 23:12:00 +0100
- To: "Charlie Kaupp" <kauppc@scbt.com>, <www-html@w3.org>
Hello dear Charlie, dear list members, > -----Original Message----- > Hello- > > I'm rewriting a website to be XHTML compliant, and I'm wondering > why certain > elements are not allowed, specifically in the <frame> or <frameset> tags, > the framepadding or framespacing elements. They seem to display > correctly in > all browsers. How come they're not included in the DTD? I really want my > frameset to display without any kind of space between frames. Any ideas? > Reasons? > > Thanks, > > -Charlie wether XHTML or HTML (no matter what version, be it 4.0 or 4.01), there are no framepadding or framespacing attributes for the <frame/> or <frameset/> elements. They never existed. They just exist in the imagination of some browser developers, some site developers and some book authors, but they do not follow any standard. To get the same behaviour, add a stylesheet to your frameset including: html, frame, frameset { padding:0; margin:0; border:none; } If that is not sufficient you might add a stylesheet to your frames including: html, body { padding:0; margin:0; border:none; } body is included for fixing a bug in IE: the root canvas is html, but IE versions previous to 6.0 got it wrong, they use body as root canvas. These style sheets are not a good example of really compliant style sheets, they are written to be syntactically correct CSS, to work with almost all browsers and to cause no problems with browsers that do not understand them. But I don't guarantee for anything, especially typos etc.. I *personally* (in my humble opinion) consider frames deprecated anyway. They were dropped in XHTML 1.1. They were not marked deprecated in XHTML Modularization, so it still is possible to write an XHTML version including frames, but the only XHTML 1.1 version that exists as recommendation doesn't include the frames module. And as far as I understand and interpret HTML/Web history, they were included in HTML 4.0 just because nearly every browser already recognized them. They were just a proprietary invention of Netscape. I have thought several nights over frames, and I think there are so many better ways to implement them, especially using style sheets and DOM. Basically it is easily possible to achieve the same desired optical effects using style sheets and the same (technical / infrastructural) design and transmission efficiency using XSLT, even without DOM. But as long as MS doesn't understand how to implement CSS correctly, this is a different story. If something sounds too strange to you and you desire more and deeper explanation, feel free to reply to this mail and ask your questions, as you see, you're welcome :) Greetings Christian
Received on Monday, 10 December 2001 17:19:06 UTC