resultado:
Olá Como você está
código:
<p>hello <br> How are you </p>
Como conseguir a mesma saída sem <br>
?
Impossível com a mesma estrutura HTML, você deve ter algo para distinguir entre Hello
e How are you
.
Eu sugiro usar span
s que você exibirá como blocos (exatamente como <div>
na verdade).
<br />
elemento existe por um motivo muito bom. Se você deseja que a linha quebre porque são parágrafos separados, basta marcá-los como parágrafos separados.<br>
é a marcação correta. A extensão de um poema seria "errada".Você pode usar
white-space: pre;
para fazer com que os elementos ajam como<pre>
, o que preserva novas linhas. Exemplo:Observe para o IE que isso funciona apenas no IE8 +.
fonte
pre
épre-line
, o que permite a embalagem.white-space
regra CSS.Use
<br/>
normalmente, mas esconda-odisplay: none
quando não desejar.Eu esperaria que a maioria das pessoas que encontrar essa pergunta queira usar o design responsivo / css para decidir se uma quebra de linha aparece ou não em um local específico. (e não tem nada pessoal contra
<br/>
)Embora não seja imediatamente óbvio, você pode realmente aplicar
display:none
uma<br/>
tag para ocultá-la, o que permite o uso de consultas de mídia em conjunto com as tags BR semânticas.Isso é útil no design responsivo, onde você precisa forçar o texto em duas linhas em uma quebra exata.
http://jsfiddle.net/nNbD3/1/
fonte
display: none
solução é de longe a mais apropriada e útil.display: inline-block; width: 1em;
vez denone
.<br class='foo'>
se precisar de mais controle, mas não enlouqueça!<br/>
é ótimo no que faz; Não há necessidade de reinventar a roda. Obrigado!Existem várias opções para definir a manipulação de espaços em branco e quebras de linha. Se alguém pode colocar o conteúdo, por exemplo, em uma
<p>
tag, é muito fácil obter o que se deseja.Para preservar quebras de linha, mas não espaços em branco, use
pre-line
(nãopre
) como em:Se outro comportamento for desejado, escolha um deles (WS = WhiteSpace, LB = LineBreak):
FONTE: Escolas W3
fonte
O comando "\ a" em CSS gera um retorno de carro. Este é CSS, não HTML, portanto, deve estar mais próximo do que você deseja: sem marcação extra .
Em uma citação em bloco, o exemplo abaixo exibe o título e o link de origem e separa os dois com um retorno de carro (
"\a"
):fonte
display:flex
e, portanto, for um hack neste contexto). Não é chique, realmente, apenas uma técnica moderna. Se você deseja exatamente a mesma marcação, mas reagir de maneira diferente, esse é o caminho a seguir."
- não use aspas simples,'
pois você deseja permitir que a\a
análise seja feita como um caractere especial.No CSS, use o código
Com esse código css, cada entrada dentro da tag P será uma quebra de linha no html.
fonte
Com base no que foi dito antes, esta é uma solução CSS pura que funciona.
fonte
input type='text', wrapping the input, and then laying the text over it with a wrapper
div de várias linhas. That also requires
: none; `on, a:before
fim de ainda poder clicar no botão abaixo.OU
fonte: https://stackoverflow.com/a/36191199/2377343
fonte
Para fazer com que um elemento tenha uma quebra de linha depois, atribua-o:
display:block;
Elementos não flutuantes após um elemento de nível de bloco aparecerão na próxima linha. Muitos elementos, como <p> e <div>, já são elementos no nível do bloco, para que você possa usá-los.
Mas, embora seja bom saber, isso realmente depende mais do contexto do seu conteúdo. No seu exemplo, você não gostaria de usar CSS para forçar uma quebra de linha. O <br /> é apropriado porque semanticamente a tag p é a mais apropriada para o texto que você está exibindo. Mais marcação apenas para desligar o CSS, é desnecessário. Tecnicamente, não é exatamente um parágrafo, mas não existe uma tag <greeting>; portanto, use o que você possui. Descrever bem o seu conteúdo com HTMl é muito mais importante - depois que você o tiver , descubra como torná-lo bonito.
fonte
Aqui está uma solução ruim para uma pergunta ruim, mas que literalmente atende ao breve:
fonte
ex
ser?p
ee
não são tão perto do teclado, é por isso que eu estou pedindoex
é definida como "Igual à altura x usada da primeira fonte disponível".Para uma lista de links
As outras respostas fornecem algumas boas maneiras de adicionar quebras de linha, dependendo da situação. Mas deve-se notar que o
:after
seletor é uma das melhores maneiras de fazer isso para o controle CSS sobre listas de links (e coisas semelhantes), pelas razões indicadas abaixo.Aqui está um exemplo, assumindo um índice:
E aqui está a técnica de Simon_Weaver, que é mais simples e mais compatível. Não separa muito o estilo e o conteúdo, requer mais código e pode haver casos em que você deseja adicionar quebras após o fato. Ainda é uma ótima solução, especialmente para o IE mais antigo.
Observe as vantagens das soluções acima:
pre
)display:block
comentários )float
ouclear
estilos que afetam o conteúdo ao redor<br/>
oupre
com quebras codificadas)a.toc:after
e<a class="toc">
fonte
Talvez alguém tenha o mesmo problema que eu:
Eu estava em um elemento com,
display: flex
então tive que usarflex-direction: column
.fonte
Configurando uma
br
tag paradisplay: none
útil é útil, mas você pode acabar com o WordsRunTogether. Achei mais útil substituí-lo por um caractere de espaço, assim:HTML:
CSS:
fonte
br
emdisplay: inline-block; width: 1em;
que deve impedir que as palavras sejam executadas juntas quando estiverem na horizontal.Que tal
<pre>
tag?fonte: http://www.w3schools.com/tags/tag_pre.asp
fonte
<pre>
para que ele quebre a linha. E se você quiser ter espaços em branco regulares?Você pode adicionar muito preenchimento e forçar o texto a ser dividido em nova linha, por exemplo
Funcionou bem para mim em uma situação com design responsivo, onde somente dentro de uma certa faixa de largura era necessário que o texto fosse dividido.
fonte
Eu gosto de soluções muito simples, aqui está mais uma
e css
fonte
Use overflow-wrap: break-word; gostar :
fonte
Você precisa declarar o conteúdo dentro
<span class="class_name"></span>
. Depois disso, a linha será interrompida.\A
significa caractere de avanço de linha.fonte
As respostas de Vincent Robert e Joey Adams são válidas. Se você não quiser, no entanto, alterar a marcação, basta inserir um
<br />
javascript usando.Não há como fazer isso em CSS sem alterar a marcação.
fonte
:after
ou:before
fazer isso.No meu caso, eu precisava de um botão de entrada para ter uma quebra de linha antes dele.
Apliquei o seguinte estilo no botão e ele funcionou:
fonte
Caso isso ajude alguém ...
Você pode fazer isso:
Com este css:
fonte
.on-new-line:before {content: ""; display: block;}
Usar em
vez de espaços impedirá uma pausa.fonte
Isso funciona no Chrome:
fonte
Suponho que você não desejou usar um ponto de interrupção porque ele sempre quebrará a linha. Isso está correto? Em caso afirmativo, que tal adicionar um ponto de interrupção
<br />
no seu texto e atribuir a ela uma classe, como<br class="hidebreak"/>
usar a consulta de mídia logo acima do tamanho que você deseja interromper para ocultar o<br />
que quebra em uma largura específica, mas permanece alinhado acima dessa largura.HTML:
CSS:
https://jsfiddle.net/517Design/o71yw5vd/
fonte
"Tip: The <br> tag is useful for writing addresses or poems."
O código pode ser
CSS seria
fonte
Não. Se você deseja uma quebra de linha rígida, use uma.
fonte
display: block;
.