Pregunta

Estoy teniendo un problema con los elementos HTML no aparecen ser copiados al portapapeles, y luego se muestra cuando el contenido se pega en MS Word, Outlook, etc.

Por ejemplo:

<p>Hello</p>
<p style="display: none;">I'm Hidden</p>
<p>World</p>

Si veo que el HTML en un navegador, copie el texto a mi portapapeles, pegar en Outlook, el párrafo del medio permanece oculto. Buenas noticias.

Sin embargo, en este ejemplo:

<p>Hello</p>
<input type="text" value="I'm not hidden" style="display: none;" />
<p>World</p>

Si hago lo mismo - copiar al portapapeles, pegar en perspectiva - la introducción de texto es visible.

¿Hay alguna manera de suprimir esto? (Sin recurrir a informar a los usuarios para seleccionar "Conservar sólo texto" en Outlook.)

Gracias!

¿Fue útil?

Solución

Parece que usted necesita tener el Javascript crear las secciones de DOM en lugar de sólo el cambio de estilos CSS. En lugar de cambiar la propiedad de presentación del párrafo "Estoy oculto", tiene el JavaScript crear ese elemento cuando se desea que se muestre, y retírela Whan desea ocultarlo.

Si los elementos son bastante complicadas, entonces tal vez usted puede tenerlos en la parte inferior del documento con. "Display: none", pero luego moverlos en el lugar donde desea visibles

Otros consejos

Uso type = 'oculto' en lugar de type = 'text' para el cuadro de entrada y terminar con esto dentro de un div con el estilo establecido en display: none

Debe tener en cuenta que ocultar HTML con CSS sólo funciona si el procesador es compatible con todos los estilos CSS.

El hecho de que no se ve copiar / pegar HTML en Outlook no significa que los datos no están ya allí.

No estoy seguro de lo que en realidad se está tratando de lograr:? ¿Por qué necesitan sus usuarios copiar HTML en Outlook en absoluto

Si usted requiere a los usuarios copiar el contenido, le recomiendo dejar caer ese contenido en un