Mam pojemnik div zawierający dwa elementy: a .button
i .box
z tekstem w środku. .button
jest na pierwszym miejscu i jest pływający w prawo. .box
nie ma float [jest to ograniczenie - nie mogę go unosić w lewo z powodu podobnych innych struktur, które zależą od tego, że nie ma float]. .box
ma overflow: hidden;
, aby ustanowić nowy kontekst formatowania bloków. To pozwala .box
rozpiętości "100% do" poprzedniego elementu pływającego, .button
.Niespodziewane łamanie wiersza w programie Firefox za pomocą obiektów pływających i przepełnienie ukryte
Dom wszystkie te i jest pływak prawy.
W Chrome (26.0.1410.12 beta-m PC, 25.0.1364.99 Mac), Safari (6.0.2 Mac), a IE8-9, to będzie działać w pożądany sposób. Tekst w postaci .box
pozostaje w jednym wierszu, a ze względu na prawy float .outer-container
będzie dokładnie taki, jakiego potrzebuje. W Firefoksie tekst jest jednak podzielony na inną linię.
Uważam też podobny problem gdy .button
jest zamiast zadokowanej lewej - dostaję pożądane zachowanie we wszystkim z wyjątkiem Firefox.
Widziałem Firefoksa 16.0.1 i 19.0 na PC oraz 18.0.1 i 19.0 na Maca. Czy to błąd?
To działa dokładnie w celu oryginalnego skrzypka, ale niestety nie jest to dokładnie to, czego szukam, ponieważ potrzebuję "zewnętrznych pojemników", aby być trochę bardziej elastycznym. Jeśli '.outer-container' nie był unoszony,' .box' powinien nadal zawierać "100% do" poprzedniego elementu pływającego z powodu 'overflow: hidden;', podczas gdy cała sprawa obejmuje 100%. [imgur] (http://i.imgur.com/MLtLMjp.png), [nowe Fiddle bez wbudowanego bloku] (http://jsfiddle.net/6qAwA/11/) – Chris
Mam to .. Przypuszczam, że w W przypadku posiadania jednego '.box', mogę spotkać się w środku i użyć bardziej szczegółowego selektora, aby dodać' display: inline-block; '. [nowe Fiddle] (http://jsfiddle.net/6qAwA/16/). Wciąż jest to dziwne i nie wiem, że ta poprawka sprawia, że problem wydaje się być mniejszym błędem w FF. – Chris