- From: Sjoerd Visscher <sjoerd@heeten.nl>
- Date: Mon, 27 Sep 1999 23:59:37 +0200
- To: "www-style" <www-style@w3.org>
Hello, Seeing this discussion about BECSS and if it should be allowed inside a style sheet, I want to propose an idea I've had for a while now: Seperately defining the transformation part of CSS (CSST), in such a way that it can be used for all kinds of purposes. What is the transformation part of CSS? I think it is: "dynamically adding attributes and content to a (already structured) document". These attributes and content do not have to conform to a DTD or Schema of the document. They are added for presentational purposes only. To allow arbitrary attributes to be added, namespaces have to be added to the *attributes*. An example: @namespace html url(http://www.w3.org/TR/xhtml11) @namespace css url(http://www.w3.org/TR/CSS3) html|h1 { css|font:200% arial,helvetica; html|onclick:func(event); } This way <h1 xmlns="http://www.w3.org/TR/xhtml11">Header 1</h1> is turned into <h1 xmlns="http://www.w3.org/TR/xhtml11" onclick="func(event)" css:font="200% arial,helvetica">Header 1</h1> With this functionality CSS3 can be described as a set of attributes, and could also be modularized. Aural style-sheets f.e. could be defined separately, and it would be given a separate namespace. What do you think? Sjoerd Visscher www.locosoft.nl PS. Personally I would like an XML version even more: <csst xmlns="http://www.w3.org/TR/CSST" xmlns:html="http://www.w3.org/TR/xhtml11" xmlns:css="http://www.w3.org/TR/CSS3"> <rule media="screen" importance="1"> <comment> This rule set the font for the html:H1 tag and adds an onclick event-handler to it. </comment> <sel>html|h1</sel> <target html:onclick="func(event)" css:font="200% arial,helvetica" /> </rule> <rule> <comment> This adds style to H2 and H3, when H3 is inside an H2, or when an H3 follows an H2. !2 behind an element-name means 'add the attributes of target number two to these elements'. </comment> <sel>html|h2!1 html|h3!2</sel> <sel>html|h2!1 + html|h3!2</sel> <target nr="1" css:fontSize="150%" css:fontWeight="bold" css:fontStyle="normal" /> <target nr="2" css:fontSize="120%" css:fontWeight="normal" css:fontStyle="italic" /> </rule> </csst> (Of course this is a bit too much to go for in one post, but I hope it spawnes some ideas.)
Received on Monday, 27 September 1999 18:02:16 UTC