Quero mostrar um parágrafo do banco de dados em uma célula da tabela.
O resultado é uma grande linha 1, ignorando como está organizada no banco de dados. ignorando 'entra', por exemplo (novas linhas)
Quero mostrar exatamente de acordo com a forma como está escrito no banco de dados.
Por exemplo, se o parágrafo for salvo assim:
hello ,
my name is x.
Quero que seja mostrado exatamente assim, em vez de:
hello, myname is x.
white-space
é uma propriedade CSS 2.1 amplamente suportada. Testado no IE8, funciona muito bem.white-space: pre;
está sendo ignorado quando aplicado em uma<td>
tag. Usar<pre></pre>
para embrulhar nosso conteúdo funciona bem, mas devido ao uso desta tabela (exportando para o Excel), grandes números de colunas e linhas aumentam o tamanho do arquivo exportado e fazem o Excel travar ao ler o arquivo. (estranho, eu sei). Alguém mais viu isso ou tem uma ideia para uma solução?Isso resolveria o problema da nova linha. pre tag adicionaria CSS adicional do que o necessário.
fonte
<pre>
tag faz todos os tipos de coisas além de apenas permitir caracteres de nova linha, mas essas configurações de estilo resolvem apenas o problema apresentado.Envolva o conteúdo em uma
<pre>
tag (texto pré-formatado)fonte
Duas sugestões para resolver este problema:
SOLUÇÃO 1:
<div style="white-space:pre;">{database text}</div>
ou<pre>{database text}</pre>
Esta é uma boa solução se o seu texto não tiver tags html ou propriedades css. Também permite manter guias, por exemplo.
SOLUÇÃO 2: Substitua
\n
por<p></p> or <br/>
Esta é uma solução se você deseja apenas adicionar linhas de quebra, sem perder outras propriedades de texto ou formatação. Um exemplo em php seria
$text = str_replace("\n","<br />",$database_text);
Você também pode usar
<p></p>
ou<div></div>
, mas isso requer um pouco mais de análise de texto.fonte
No código do lado do servidor, substitua as novas linhas (
\n
) por<br/>
.Se você estiver usando PHP, você pode usar
nl2br()
fonte
Oi eu precisava fazer a mesma coisa! Não pergunte por que, mas eu estava gerando um html usando python e precisava de uma maneira de percorrer os itens de uma lista e fazer com que cada item assumisse uma linha própria DENTRO DE UMA ÚNICA CÉLULA de uma tabela.
Descobri que a tag br funcionou bem para mim. Por exemplo:
Isso produzirá a saída que eu queria.
fonte
Eu uso a tag de código html após cada linha (veja abaixo) e funciona para mim.
George Benson </br>
123 Main Street </br>
New York, Ny 12344 </br>
fonte
o código abaixo funciona como mágica para mim >>
fonte
Adicionei apenas
<br>
dentro do<td>
e funciona bem, quebre a linha!fonte
Se você tem uma variável de string
\n
dentro dela, que você quer colocar dentrotd
, você pode tentarfonte