A personal wish list for CSS

Here is a functional wish list for CSS. As a document writer, I have
tried to produce complex things and found that some simple requests
were impossible to satisfy with CSS 2. This list does not reflect the
views of my company but only personal opinion. Topics already
discussed by CSS WG are not in this list. I am not here proposing
implementation solutions or whatever ; only wishes...
 
- printing of local anchors
 
        if a document contains a local anchor
 
                <A HREF="#toto">..</A>
                ...
                <A NAME="toto">..</A>
 
        there is no simple way to print it and keep track of the
        link between the two anchors. I'd like to be able to print
        just after the source of the link the page number of the
        target of the link, or add a counter information before the
        named anchor and a reference to this counter value after the
        href anchor.
        This would greatly increase the readability of a printed
        document.
 
        [ this is done by html2ps but impossible with CSS 2 ]
 
- improved named pages
 
        the @page at-rule allows to create named pages. If two
        contiguous blocks belong to two different named pages, a page
        break is inserted in the flow.
        I'd like to be able to define named pages that are extracted
        of the normal flow sent to the printing engine, and sent
        to this engine after the print of the normal flow.
        Then the following sheet :
 
                @page normal { size : 19cm 27.7cm }
                @page toc    { size : 19cm 27.7cm }
                @print {
                  H1, H2, H3, H4, H5, H6 { pages : normal, toc }
                  }
 
        using a property 'pages' defining on which page(s) the
        element has to be printed, will automatically generate a table
        of contents...
 
- newspapers often print bigger the first letter of a paragraph, the
following characters floating on the right (or left for some non
western scripts) of the first letter. The :first-letter pseudo makes
it possible in CSS. But newspapers also often use a size of font for
the lines floating at the right of this first letter which is not the
normal size of the paragraph. The National Geographic Magazine for
instance uses extensively this feature (see article on Denmark in July
issue for instance). This for the moment impossible in CSS which only
allow access to the :first-line of a paragraph. What about
:first-lines(n) or :floating-lines ?
 
- the border of a block is defined in CSS by four edges : top bottom
right and left but there is no way to access corners. If you want to
make a text look like that :
             -----------
 
        |    Hello there   |
        |    What's up ?   |
 
             -----------
 
removing the four corners, you nowadays have to use a table.  There is
also no way to use rounded corners for instance.  What about new
properties for corners ? Used in conjunction with CSS 2 visual effects
(dynamic outlines for instance), it would be just great !
 
- I'd like to be able to give different styles to anchors depending on
the fact that the link is local to the current document or
not. Example : different cursors. A pseudo-class valid for links
':local-link' or ':no-cx-link' (no connexion) would be just fine...
This is also very important for printed documents' readability.
 
- there is nothing against CSS rules applied to HEAD sub-elements but
browsers do not accept such rules. I'd like to be able to render LINK,
META, ... attributes and TITLE content. I have nothing against :
 
  LINK[REL="stylesheet"]:before { content : "Stylesheet=" attr(HREF) }
 
Just waiting for browser vendors' support.) I'm afraid I can wait a
long-long-long time !-(
 
- gradient fill (already discussed here)
 
- CSS 2 allows to retrieve the value of an attribute carried by the
selected element of a rule. I'd like to be able to retrieve the value
of any attribute carried by any element of the document. I know that
this influences progressive rendering. But I want it ;-)
 
========================================
 
That's all and that's a lot.
 
</Daniel>

Received on Thursday, 30 July 1998 12:55:24 UTC