This is a cool idea. I'll consider adding a function for this - something like parent(n) - that will return the name of the nth parent selector.
On Sat, Oct 10, 2009 at 10:57 AM, Craig <[email protected]> wrote: > > Handling the containers of floated elements in HTML/CSS has always > been a real pain. Currently, I add "overflow:auto" (see > http://www.sitepoint.com/blogs/2005/02/26/simple-clearing-of-floats/) > to the a container with nothing but floated elements. This prevents it > from shrinking down to zero height. > > I'm learning SASS now and really enjoying the DRY aspects of it. When > I had a float-container to clear, I immediately thought of an elegant > way to do it with the least amount of code possible. Here's what I > attempted: > > =floatme(!side) > float = !side > & > overflow: auto > > .teasers > .first > +floatme("left") > .second > +floatme("left") > .third > +floatme("left") > > The idea behind this is to: > - Have a standard, reusable method of floating elements. I only have > the float: property here, so it's a bit unnecessary to use the mixin, > but I have the ability to add other properties too (in particular: > width) without repeating it > - *automatically* clear the floats as soon as they're used. In this > case, that means adding overflow: auto to the parent of the floated > element > > The first point works wonderfully. However, the second one does not. > It appears that, when & is used in a mixin, the "parent" selector is > the selector that the mixin is applied to. Thus, my overflow gets > applied to ".teasers .first" etc, not ".teasers". > > This makes a certain amount of sense given how SASS works. But I'd > really like it if I could get access to the parent-of-the-parent too. > I've tried: > & > & > > ...and: > & & > > ...but neither of these work. The former just inserts a second > ".teasers .first" with the overflow, and the latter inserts > ".teasers .first .teasers .first". > > It looks like SASS doesn't currently support what I want to do, so I > guess I'm asking for a new feature request: the ability to access the > grandparent (and ideally any ancestor) of the current selector. > > Alternately, if there's a better way to clear the floats that works > with the current SASS, I'll definitely appreciate that. > > Thanks, > > Craig Walker > SoftCraft Development > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Haml" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/haml?hl=en -~----------~----~----~----~------~----~------~--~---
