[whatwg] Suggestion for Menus in Web Forms 2.0

Ian Hickson ian at hixie.ch
Wed Aug 25 16:30:01 PDT 2004

On Tue, 10 Aug 2004, Matthew Thomas wrote:
> > > >
> > > > The problem is in the case where you _don't_ want it visible in 
> > > > downlevel UAs.
> > > 
> > > In which case you can use CSS to hide it.
> > 
> > CSS can be disabled. Or not supported at all. It generally is not a 
> > solution to legacy fallback.
> Er, really? So in HTML5, what do you propose will be the recommended way 
> of making these controls invisible in downlevel UAs?
> *   <output>

Displaying the contents of <output> is the fallback behaviour we want.

> *   <button>

New <button> types will fallback to submit buttons (in conformant UAs) 
which is what we want, since it allows authors to implement the behaviour 
on the server side, as in this demo:


> *   <select>
> *   <textarea>

Not sure what you are referring to here, these aren't new in HTML5.

> I don't see any way of hiding them in either HTML4 or WF2. If the answer 
> is "without CSS, you can't", why shouldn't that be true for <menu> as 
> well?

With <menu> you can chose if you want the fallback behaviour to be "show 
something" or "show nothing", since both use cases make sense.

> I appreciate that CSS isn't an ideal degradation mechanism, but then 
> making something invisible is an odd sort of degradation for an 
> interactive element to begin with.

Not if that element wouldn't do anything useful anyway. For example, you 
wouldn't want a context menu to degrade to something visible, you would 
just not have the context menu feature.

> > > Why on earth would you want to hide a menu? It's a menu. If none of 
> > > its items apply to the current context, a menu should appear 
> > > inactive, not hidden. Dynamically hiding and showing entire menus 
> > > would make the interface unnecessarily unstable.
> > 
> > We're talking about the menu part of a menu bar here, not the menu bar 
> > itself.
> Ahh, I think I see the problem: I think you may have misread my 
> proposal. <menutitle> is part of the <menu>.
>       <menu id="fm">
>        <menutitle>File</menutitle>
>        <itemgroup>
>         <li command="NewRecord">New</li>
>         <li command="OpenRecord">Open…</li>
>        </itemgroup>
>        <itemgroup>
>         <li command="ExportRecord">Export as Text</li>
>         <li command="RenameRecord">Rename…</li>
>         <li command="DeleteRecord">Delete</li>
>        </itemgroup>
>        <li command="SaveAndClose">Close</li>
>       </menu>

No, I had understood that. I don't see how my reaction was wrong. The 
problem with the above is that you want to hide the <menu> while it isn't 
shown. If the <menutitle> is a child, then it will be hidden too.

Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

More information about the whatwg mailing list