- From: Alan Gresley <alan@css-class.com>
- Date: Tue, 01 Dec 2009 16:13:16 +1100
- To: "L. David Baron" <dbaron@dbaron.org>
- CC: "Tab Atkins Jr." <jackalmage@gmail.com>, Salar <salarsoftwares@gmail.com>, www-style <www-style@w3.org>
L. David Baron wrote: > On Monday 2009-11-30 12:23 -0600, Tab Atkins Jr. wrote: >> On Mon, Nov 30, 2009 at 11:35 AM, Alan Gresley <alan@css-class.com> wrote: >>> This is not entirely correct. right-to-left layout with floats is currently >>> implemented correctly in the latest versions of Firefox and IE8 with rtl >>> bidirection (dir="rtl"). Fails in both Safari and Opera. >> Huh. I don't see that interpretation supported in the specs, though. >> float:left says that it floats *to the left*, not to whichever side is >> the opposite of the text progression direction. Perhaps this is a >> bug? > > That testcase isn't about float:left and right swapping sides for > rtl. It's about the overflow behavior when a float to the end-edge > (i.e., float:right in ltr, float:left in rtl) is wider than its > container. [...] > -David The test case I provided did have a very wide container but remember overflow only comes into play when the content exceeds the viewport. If the floated container was say 700px, it would not normally overflow. If I was to resize the viewport to 600px though, then overflow would comes into play. Please don't tell me that we are considering the scenario of an element floated left now acting as an element floated right for rtl (swapping sides). To make the literal meaning of right and left to act in the opposite sense for rtl is absurd. Using an analogy, two people, one from a place that is accustomed to ltr text and the other person from a place that is accustomed to rtl text. They both bring the same book to compare, one ltr and the other rtl and each book is printed in there respective language. Now ask them both what is on the left and what is on the right in both books? Floats act in a manner like list items. For rtl, the list markers appear on the right hand side of the list and each list item is indented from the right by the property padding-start. So when we have in the style *float: left* or *float: right*, we are really dealing with something that is behaving as *float: left-start* or *float: right-start* respectively. -- Alan http://css-class.com/ Armies Cannot Stop An Idea Whose Time Has Come. - Victor Hugo
Received on Tuesday, 1 December 2009 05:14:04 UTC