|
Make the page contents continuously "fill" the window as it
changes size. Multiline text should wrap at the right margin,
until it becomes four or five inches wide (at which point it
becomes too hard to read). Trees, tables, editors, etc. at "center stage" should enlarge
generously while their margins stay compact. If the page has
anything form-like on it, horizontal stretching should cause text
fields to elongate -- users will appreciate this if they need to
type in anything longer than the text field's normal length.
Likewise, anything scrolled (lists, tables, etc.) should lengthen,
and possibly widen too.
Web pages and similar UIs should allow the body content to fill
the new space, while keeping navigational devices and signposts
anchored to the top and left margins. Background colors and
patterns should always fill the new space, even if the content
itself cannot.
What happens when the window gets too small for its content? You
could put scrollbars around it. Otherwise, white space should
shrink as necessary; outright clipping may happen when the window
gets really tiny, but the most important content hangs in there to
the end.
A well-behaved Liquid Layout can be difficult to implement in
Web pages, especially if you want to dispense with tables and use
straight CSS. It's also hard in Visual Basic and Visual C++.
Java, however, provides several layout managers that can be used
to implement it.
In The Design of Sites, van Duyne et. al. refer to this
pattern by the name "Expanding-Width Screen Size." They contrast
it to "Fixed-Width Screen Size," also a pattern.
|