Barney Carroll wrote:
> I know this list isn't particularly keen on conceptual problems but I
>  have this notion that I can't conceive of without overflow on a 
> containing element which then comes round to bite me in the face.

Conceptual problems are certainly more interesting to work on than the
flow of browser- and designer-bugs we're mostly dealing with on css-d.

I'll stay out of the actual case, as you haven't presented a document to
work on. Also, it seems like you have limited your options a bit too
much by trying to plug a specific menu-solution into a specific
layout-solution. Yes, it seems like you'll end up "extending into
nowhere" with your combination.

I think you have at least a couple of options.

1: Layouts that are not relying on excessive paddings, negative margins
and 'overflow: hidden', are more suitable for that particular
menu-solution - as you have noticed already.

Myself, I don't use that layout-solution for "real" layouts, because of
all the limitations it puts on what I can do inside it, and all the
browser bugs/variations one may run into when challenging it a bit.
So, the easiest solution (IMO) is to use another layout-solution - one
that doesn't rely on 'overflow: hidden'.

I still prefer variations of...
<http://www.alistapart.com/articles/negativemargins/>
...as it's the most "solid" base I've found to date.
CSS tables would be a better solution in many cases...
<http://www.gunlaug.no/tos/moa_11.html>
...but Internet Explorer doesn't support the CSS2.1 standard
properly yet, so that'll have to wait.


2: It's a misconception that 'absolute positioning' is needed to create
fly-outs on a menu. 'A:P' is perfect for the invisible state, but
'partly removed floats' can be ideal for the visual/:hover state.
'Partly removed floats' do have as much effect on their parents as we
want them to - the 'removed' part doesn't but the remaining part does.

What this means is that by having a menu that expands when sub-menu
levels are appearing on :hover, you can create a menu that expands with
its visible sub-menus and pushes the layout deeper and/or wider when
needed. You decide which direction and how much, by controlling how much
of the sub-menu that is 'removed from the flow'.
You don't even need floating sub-menus for this to work, you only need a
floating 'partly removed' menu-container and some 'stacking control'.
The simplest - only vertically expanding - menus won't need floats at
all, and they only need 'A:P' for sub-menus' invisible state.

So, in case you need something more to trigger your imagination, the
following example of 'nested and removed floats' may be of some use...
<http://www.gunlaug.no/contents/wd_demo_float_02.html>
The demo is a bit old, but neither the standards nor the browsers have
changed much in the time that has passed.

regards
        Georg
-- 
http://www.gunlaug.no
______________________________________________________________________
css-discuss [EMAIL PROTECTED]
http://www.css-discuss.org/mailman/listinfo/css-d
IE7 information -- http://css-discuss.incutio.com/?page=IE7
List wiki/FAQ -- http://css-discuss.incutio.com/
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/

Reply via email to