- From: Bert Bos <bert@w3.org>
- Date: Thu, 22 Sep 2005 20:00:55 +0200
- To: www-style@w3.org
On Monday 19 September 2005 16:35, Patrick Lauke wrote:
> > Gavin Kistner
> >
> > But now you're tempting me, because I really would like to be
> > able to
> > use CSS to shove ancillary sidebar content as footnotes and create
> > links to it.
>
> But should this not be behaviour that is taken care of by the user
> agent? We'd need a way to define (in content?) that something is
> ancillary information such as a footnote, but leave it up to the
> browser to decide how best to deal with it based on user preference,
> device capabilities, etc
Indeed. One of the nice things of CSS is that it can be ignored. Search
engines, for example, can (and do) skip style sheets, because there is
no content in them. But it would indeed be nice if there were a way to
insert sidebars, footnotes and other content that you'd like to keep in
a separate file.
There are few methods already and others are being worked on:
1) You can use the <link> element for links that you want the browser to
handle in a special way. Some well-known types of links are home, up,
previous, next, alternate and copyright. The browser makes a menu out
of these, so they don't take up space in the content. (For years, only
Lynx understood these links, but now several other browser do, too.)
More link types can be proposed and if they are popular enough and
sufficiently documented, I'm sure browsers and other software will add
support for them.
2) The new CDF (Compound Document Format) working group of W3C is
working on how to embed ("transclude" is the proper word) external
content in a document. <img> and <object> work fine for images, but if
you try to use them to include an HTML sidebar, they don't work so
well. The CDF WG will define how to determine the size of such content,
how to inherit style sheets and how to make the interaction seamless
(drag-select text that is partly inside the transcluded object, submit
a form that is partly inside the object, etc.).
Eventually, <object data="navmenu.html">...</object> (when combined with
the proper style sheet) should be indistinguishable from copying and
pasting the contents of navmenu.html into the document, except that it
is more efficient.
3) XHTML2 will probably have a "role" attribute, which is similar to
"rel," but not restricted to links. Adding "role" to the <object>
example above allows you to indicate what the role of that transclusion
is.
For certain predefined types, the browser could then handle that object
specially: a "navigation menu" could be bound to a special key, so that
pressing that key zooms that menu to full screen, wherever you are in
the document; a "footnote" could be automatically suppressed if the
screen is too small; also on a small screen, an "illustration" could be
reduced in size, while a "diagram" is not reduced, but allows
panning...
The same could be done in HTML with the "class" attribute and the people
working on "microformats" are trying to create a set of well-known
class names that might eventually become common enough that software
can treat them specially.
Bert
--
Bert Bos ( W 3 C ) http://www.w3.org/
http://www.w3.org/people/bos W3C/ERCIM
bert@w3.org 2004 Rt des Lucioles / BP 93
+33 (0)4 92 38 76 92 06902 Sophia Antipolis Cedex, France
Received on Thursday, 22 September 2005 18:01:06 UTC