2011-12-21 12 views
6

Próbuję zawinąć tekst wewnątrz td i korzystając z poniższego stylRozwiązanie dla word-break: break-all stylizacja w firefox?

word-break:break-all 

Works perfekcyjnie w IE, ale nie w Firefoksie, przeczytałem, że ten isnt obsługiwany! Wypróbowano rozwiązanie podane w http://petesbloggerama.blogspot.com/2007/02/firefox-ie-word-wrap-word-break-tables.html. Wydaje się, że nie działa, Jakiekolwiek rozwiązanie tego problemu?

Dzięki, Adarsh ​​

+0

Rozwiązanie z bloga działa na mnie idealnie. – fyr

+0

Próbowałem zastosować klasy HardBreak na poziomie td i nie działało, czy to wszystko co zrobiłeś? – KeenUser

+0

Tak, tylko dodałem nazwę klasy do td i to wszystko. – fyr

Odpowiedz

10

I wreszcie miałem pewne problemy z tym również, ale udało mi się uzyskać jego pracy..

.hardBreak { 
    white-space: pre-wrap; /* css-3 */ 
    white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ 
    white-space: -pre-wrap; /* Opera 4-6 */ 
    white-space: -o-pre-wrap; /* Opera 7 */ 
    word-wrap: break-word; /* Internet Explorer 5.5+, 6, 7, 8 compability-mode */ 
    -ms-word-break: break-all; /* Internet Explorer 8 */ 
} 

mam nadzieję, że to pomoże

Ostatnia opcja jest potrzebna w trybie natywnym IE8. To działa dla mnie i jest testowany w wersjach FF8, IE 7, 8compability, 8native, Chrome.

+0

word-break: keep-all; pracuje w firefox. – aleXela

+0

Aword-break: break-all, nswer się starzejeponieważ pojawia się w wyszukiwaniach Google, chciałbym zasugerować aktualizację go o nowe informacje: teraz 'word-break: break-all;' działa również w Firefoksie :) –

0

Nie sądzę rozwiązania można wymienić pracował przez jakiś czas; być może (nieumyślnie?) pracował nad niektórymi wcześniejszymi wersjami Firefoksa, ale nie wygląda tak, jak można by tego oczekiwać (pre-wrap nie powinno się łamać słów).

Sposób na to, aby Firefox traktował punkt jako dopuszczalną możliwość bezpośredniego przełamania linii jest tagiem <wbr> - nie w żadnej specyfikacji, ale szeroko obsługiwany. Zwykle najlepiej go używać wstawiając go pod odpowiednie punktów, ale w ostateczności można nawet umieścić go między dowolnymi dwoma znakami (prawdopodobnie użyłbyś preprocessingu, skryptów po stronie serwera lub JavaScript po stronie klienta, aby to zrobić) .

0

Spróbuj to zamiast:

word-wrap:break-word 

Powinien działać we wszystkich przeglądarkach (tak długo, jak masz stałą szerokość na div/komórkę jesteś stosowanie go do ...

+0

Nie, ten nie działał nawet w IE na poziomie td. – KeenUser

+1

Jeśli umieścisz rzeczywisty kod HTML, mogę rzucić okiem. Czy masz stałą szerokość na tagu td? – Fred

1

Użyj zawijanie wyrazów: słowo-przerwy; Z pewnością zadziała!

+1

Podaj kod do swojej odpowiedzi i spraw, aby był mały krótki. –

1

word-wrap będzie działać tylko dla elementów inline-block lub blokowych. Musisz zmienić typ elementu. Jak:

.example { 
 
    display: inline-block; 
 
    word-break: break-all; 
 
}

+0

Dobra uwaga. Miałem ten problem po mojej stronie i naprawiłem za pomocą wbudowanego bloku. Dzięki. –