- From: <bugzilla@jessica.w3.org>
- Date: Tue, 31 May 2011 12:27:21 +0000
- To: public-html@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=12828 Summary: Client-side Master pages wanted eagerly Product: HTML WG Version: unspecified Platform: All OS/Version: All Status: NEW Severity: enhancement Priority: P2 Component: HTML5 spec (editor: Ian Hickson) AssignedTo: ian@hixie.ch ReportedBy: bpkservice@mail.ru QAContact: public-html-bugzilla@w3.org CC: mike@w3.org, public-html-wg-issue-tracking@w3.org, public-html@w3.org This is the whole message consisting of two messages sent by me to public-html-comments@w3.org. I repost it here because I'm not sure that this text will reach the right people. I would like to make a strategic feature request to HTML. May be it is not too late. I may missed something while reading drafts of new HTML standard, but I seriously think, there's one feature that HTML really lacks. I'm talking about Master Pages done with pure HTML only. You may object, saying that there are tons of server technologies including SSI, ASP.NET, PHP, at least JavaScript, to accomplish this task. But there are also applications where these HTML-based Master Pages would be essential. They are the servers which have server scripting turned off or don't have it at all, such as mini web servers, possibly done on the hardware router base. There is one truth about server-based master pages: each time such a page is loaded the client should download the web site design again and again instead of downloading master page once, caching it and then applying to each content page. Such a waste of traffic! In comparison to JavaScript solutions Client Master Pages wouldn't require any programming from the web designer. There may be also some profit from Master Pages on client side when saving downloaded web sites to disk (disk space save). I think, there already are great drafts for this technology present - no need to invent something new from scratch. Look at ASP.NET Master Pages for example. There are basic elements: 1. Link to master page in the content page 2. Named content placeholders in the master page 3. Named structures with contents, which correspond to named placeholders in master page Some people denote that there are FRAME and IFRAME tags to do the task which Client Master Pages should do. But these instruments have big disadvantages (otherwise Server-Side-Include wouldn't exist and Microsoft wouldn't give birth to their Server Master Pages). The main disadvantage is that in both - FRAME and IFRAME - cases the container chooses contents for itself. Master Pages do the opposite: the content page chooses its container. So if you have multiple designs in multiple Master Pages, the design can be switched easily in each particular content page. Now imagine that you should have two master page designs on your web site. For instance, each even content page should have design number 1, and each odd - design number 2. But the web site should look consistent while clicking on links and going to another page. This task can not be done easily using FRAMESET. I don't like an idea that each anchor tag is aware of in which frame a linked document should be displayed (I mean the frequent use of "target" attribute). Additionally, frames aren't consistent in a meaning of DOM (you have to "jump" somehow over frame border). Pages created using Master Pages are consistent. The difference between Server Master Pages and Client Master Pages I suggest is that Client Master Pages remain in two pieces but should be considered by the browser as a solid document, especially from the DOM point of view. Another disadvantage of frames is that they are scrollable individually - each in its own rectangualr area. The document created using master pages looks consistent and scrolls as a whole sheet. As an example how in my imagination the master pages should work - refer to linking external CSS or JavaScript files to HTML document. After loading an external CSS file browser doesn't distinguish between CSS from external file and inline CSS in STYLE tage of HTML-document's header. The same about JavaScript files - browser doesn't distinguish between external JS and script from inline SCRIPT tag. And think about nested Master Pages - they also could be useful. Please reply me about your opinions concerning implementation of this feature. And please remember - I am at least one user who needs this technology :) I had enough time to think about that. -- Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug.
Received on Tuesday, 31 May 2011 12:27:29 UTC