2011-12-21 11 views
6

estoy tratando de ajustar el texto dentro de un td y mediante el siguiente estilo¿Solución para el salto de palabra: estilo break-all en firefox?

word-break:break-all 

funciona perfectamente bien en IE, pero falla en Firefox, leemos que esto no es compatible! intenté la solución dada en http://petesbloggerama.blogspot.com/2007/02/firefox-ie-word-wrap-word-break-tables.html. Tampoco parecía funcionar, ¿alguna solución para esto?

Gracias, Adarsh ​​

+0

La solución del blog me funciona perfectamente. – fyr

+0

Intenté aplicar la clase HardBreak en el nivel td y no funcionó, ¿eso es todo lo que hizo? – KeenUser

+0

Sí, solo agregué el nombre de la clase a la td y eso es todo. – fyr

Respuesta

10

finalmente tenido algunos problemas con esto también pero pude conseguir que funcione:..

.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 */ 
} 

espero que esto ayude a

La última opción es necesaria mientras se tiene el modo nativo IE8. Esto funciona para mí y se prueba en FF8, IE 7, 8compability, 8native, Chrome.

+0

salto de palabra: keep-all; trabajando en firefox. – aleXela

+0

Aword-break: break-all; nswer está envejeciendo ...dado que aparece en las búsquedas de Google, me gustaría sugerirle que lo actualice con nueva información: ahora 'word-break: break-all;' también funciona en Firefox :) –

0

No creo que la solución se menciona que ha funcionado durante algún tiempo; puede haber funcionado (por descuido?) en algunas versiones anteriores de Firefox, pero no se ve como una que se pueda esperar que haga el trabajo (pre-wrap no se debe esperar que rompa palabras).

La forma de hacer que Firefox trate un punto como una oportunidad de salto de línea directa permisible es la etiqueta <wbr>, no en ninguna especificación, pero ampliamente admitida. Normalmente es mejor utilizarlo al insertarlo en puntos adecuados, pero en el extremo, incluso podría ponerlo entre dos caracteres (presumiblemente, usaría preprocesamiento, secuencias de comandos del lado del servidor o JavaScript del lado del cliente para hacer esto) .

0

Tal vez puedas probar:

word-wrap:break-word 

Se debe trabajar en todos los navegadores (siempre y cuando tenga un ancho fijo en el div/célula va a aplicar a ...

+0

No, este ni siquiera funciona en IE a nivel td. – KeenUser

+1

Si publica el HTML real, puedo echarle un vistazo. ¿Tiene un ancho fijo en la etiqueta td? – Fred

1

Use word-wrap: break-word; ¡Seguro que funcionará!

+1

Dale el código a tu respuesta y hazlo pequeño breve. –

1

Con

display : block;

Es bien

1

word-wrap sólo funcionará para los elementos en línea de bloques o de bloques. Entonces, debes cambiar tu tipo de elemento. Al igual que:

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

+0

Buen punto. Tenía este problema de mi lado y lo resolví con un bloque en línea. Gracias. –

Cuestiones relacionadas