Re: Popup windows & style sheets

Heikki Vesalainen writes:

 > When I last week made my original proposal of the "PopUp Windows for 
 > Dictionary purposes" in the www-html mailing list, I hadn't yet studied 
 > the style sheet drafts. 
 > As an addition to my original proposal (which still can be found at
 > http://www.clinet.fi/~wes/popup.html ), I would suggest that three new
 > style elements assosisated with "A.name" would be added to the drafts: 
 > {render=popup}, {width=xx) and {heigth=yy}.  This way we could have 
 > multiple popup windows, instead of just the one achieved with the 
 > "_popup" target.
 > An example:
 > A.dict {render=popup;
 > 	width=200}

This is a feature that a style sheet could support. But it is not so
easy. We've done a fair amount of thinking, but haven't managed to
come up with anything worth putting in a draft yet.

- if the pop-up contains a hyperlink and the user selects it, where
  should the result go?
- do we want to specify how long the pop-up stays on screen? until the
  mouse is released? but then you can't click in it any more.
- if rendering becomes dependent on events (such as mouse clicks), you
  enter the realm of scripting, which is a very different field and
  full of mines.
- if the pop-up has a more permanent character, like a new window,
  then you get into user-interface problems: in principle, no new
  windows should appear, unless explicitly opened by the
  user. Otherwise he might not know how to get rid of them again.
- we want not only linked documents to appear in a pop-up, but also
  selected elements of the current document (e.g.,the NOTE and FN
  elements that were once proposed.)
- does the pop up need a title?
- do we want to specify whether it has an `OK' button or something

The best solution so far seems to allow pop-ups that display an
element or a linked document, and that contain some platform dependent
`OK' button to close it. If the displayed text contains a hyperlink,
than selecting it also closes the pop-up.

This causes minimal disruption to the user interface and assures that
at all times there is at most one pop-up and that it stays open for a
short time only.

It is also easy to replace with something else in browsers that don't
do pop-ups (because they don't run under a windowing system, or
otherwise). You can put the would-be pop-up between two thick black
lines in the text, you can have a reserved screen space for them, you
can have them temporarily replace the current document, etc.

 > Making music with computers is easy, just load your 
 > <A HREF="dictionary.html#MIDI" CLASS=dict TARGET=dictwindow>MIDI</A>
 > programme and start playing
 > Pressing the link "MIDI" would bring up a popup window with contents from 
 > the dictionary.html <A NAME="MIDI"> and ending to the </A> tag.  The 
 > popup windows name would be "dictwindow" (the name is used, when you want 
 > to load new info to the same window) and it's width would be 200 pixels. 
 >  Height would be determied by the amount of text displayed in it.

So we need a mechanism to restrict the view of a document to the
targeted anchor. That might be a useful property to put in the
style sheet as well. We may have to rethink our current display:none
property a bit, so as to be able to do

  HTML  { display: none }
  #midi { display: block }

even though the `midi' element is inside the HTML.

  Bert Bos                                ( W 3 C ) http://www.w3.org/
  bert@w3.org                                  INRIA project RODEO/W3C
  http://www.w3.org/pub/WWW/People/Bos/   2004 Rt des Lucioles / BP 93
  +33 93 65 77 71                 06902 Sophia Antipolis Cedex, France

Follow-Ups: References: