- From: Eli Friedman <sharparrow1@yahoo.com>
- Date: Fri, 20 Jul 2007 22:10:13 -0700 (PDT)
- To: www-style@w3.org
--- James Elmore <James.Elmore@cox.net> wrote: > I want to start with a discussion of adding > ‘position’ to the > parameters of the ‘float’ styles. This will allow > users to adjust > the positions of floated elements (or leave the > positions alone) more > than just ‘float: left;’ and ‘float: right;’ permit. [snip] Your proposal is quite complicated, and there isn't any significant discussion of how it would be used. Why exactly would someone want to position floats in arbitrary places on the page? What effect do you want to be able to achieve that cannot be done with current CSS? That would be a much better way to start a discussion than an incomplete proposal. I've tried to address some of your points, but it's rather difficult without really knowing what you're trying to do. > I’m not sure exactly how flowing the text boxes and > blocks around the > ‘floated’ block would work, especially when the > floated element > extends into another block. It seems like you would benefit from spending some time reading the spec and understanding how floats currently work. And how exactly flow works around these repositioned floats is probably the most important/tricky part of the proposal, and where most of the implementation work that would be required. > A short form, using 'float: static;' [snip] The details of how exactly this property is declared isn't really important when you're still figuring out what it does. > ‘Float: static;’ would not move the floated element, > only allow text > and blocks to flow around it. How is this different from float: left (at least for LTR text)? > ‘Float: relative;’ would allow the floated element > to move along with > the text and blocks which surround it, just as a > ‘relative’ element > would, except the TRBL (top, right, bottom, left) > parameters could > move the floated object relative to its original > position. Perhaps > there could be another parameter which would permit > the empty space > where the floated object originally was positioned > to remain open or > to close, although the definition of 'float' would > already indicate > that the hole would close. What's the use of shifting a float some arbitrary amount? Shifting it vertically seems worthless, and the only effect you could achieve with horizontal positioning would be some very difficult-to-read text. (Something similar to this might be useful with columns, though.) > > ‘Float: absolute;’ would allow the floated element > to be positioned > in relationship to the enclosing block. This would > be the closest to > the current ‘float: left;’ (or right), permitting > more accurate > positioning of floated elements, perhaps with: > > float: absolute; top: auto; bottom: auto; left: > 0; right: auto; > > producing the same effect as ‘float: left;’ I don't see what useful layouts this could achieve, especially considering that the web is not a medium which gives you the kind of strict control that would make this useful. > Finally, ‘float: fixed;’ would place the floated > element relative to > the viewport. This might be harder to program, since > the inline, > text, and regular blocks would need to be ‘reflowed’ > every time the > viewport or the elements displayed in it changed. > (Perhaps this could > be delayed until a later release, although it seems > that it might be > very useful to designers.) Marginally useful for printing at best; can you actually imagine what it would be like to have text constantly moving around as you scroll? (Not to mention it would be a huge perf hit to have to recalculate the layout of the entire page every time you scroll.) -Eli ____________________________________________________________________________________ Boardwalk for $500? In 2007? Ha! Play Monopoly Here and Now (it's updated for today's economy) at Yahoo! Games. http://get.games.yahoo.com/proddesc?gamekey=monopolyherenow
Received on Saturday, 21 July 2007 05:11:25 UTC