2016-09-21 15 views
0

シンプルなケースはこちら。期間後のHTML空白

<p> 
This is some text. This is some text. This is some text. 
This is some text. This is some text. This is some text. 
</p> 

出力:

This is some text. This is some text. This is some text. This is some text. This is some text. This is some text. 

お知らせ空白が追加されたブレークを削除する場合は、次のHTMLを考えてみましょう。どうすればそれを乗り越えることができますか?

私のHTMLはSMTPによって送信されているので、それらの「ブレーク」がサーバーに到達する方法は制御しません。私は<br>で必要な休憩をします。ピリオド(.)で終わる場合を除いて、すべての休符を無視しなければなりません。

ありがとうございます。

+2

ようこそスタックオーバーフロー。 [コードサンプル '{}'](http://i.stack.imgur.com/VYd26.png)ツールバーボタンでソースコードを整形することができます。今回はあなたのために行いました。 –

+0

私は気づいた。私は最終結果を見てすぐにそれを探していました:)。助けてくれてありがとう。 – cneves

+0

あなたは 'text.This'を3番目と4番目の文の間にまとめたいと思っていますか? (ちなみに、メールを正しくエンコードすると、その行末がサーバーに到達する方法を確実に制御します。) –

答えて

0

HTMLの要素のコンテンツ(例外は<pre>など)はフォーマットされ、改行はスペースで置き換えられます。

それぞれの行を別々の<span>に送信すると、スペースを使わずに追加することができます。

PS:あなたの「必要な休憩」が何であるか、ここではSMTPにリンクされている制限事項についてはわかりません。改行なしで直接追加されたすべての行を送信できないようにするにはどうすればよいですか?

+0

私は ' 'がどのようにこのトリックをしているのか分かりません。 SMTPについては、データを送信するCライブラリを使用しています。おそらく、HTMLメッセージを送信するときに自動的に改行されるので、どこにあるのかは制御しません。 「必要な休憩」とは、テキストを実際に壊す場所を意味します。情報ありがとうございます。 – cneves

+0

私は 'span'をデフォルトのインラインであると言いましたが、解決策はdom要素内にそれぞれ行をラップし、いくつかのCSSを使用して' p'内で削除できない空白を取り除くことです。 https://plnkr.co/edit/pCsit0UTWVN5dvGVcRSJ – ATX

+0

あなたのライブラリについて、自動的に改行する言葉を読んでください:DOM要素にあなたの行をラップして、できればあなたが望む行動を確実にするためのCSSを使うそれはコンテンツの '\ n \ r'に依存しないためです。 – ATX

0

私が特に使っていたCライブラリに問題がありました。 SMTPの制限は1000(CRLFを含む)であったにもかかわらず、自動的に句読点で行を壊していました(最大76文字まで)。以下のようなもの送信する場合:(。)

<p> Something long and over 76 characters. Something else who increases the total size of the line.</p>

期間でそれを破るしないことを決定し、少なくとも私のために、問題を解決:

<p> Something long and over 76 characters.Something else who increases the total size of the line.</p>

をそれは2行にそれを破りますシナリオ。 (私は電子メールアドレスを送信していましたが、いつもそこに壊れていました)

これは、HTMLの改行に問題がある人のための答えではありません!

ATXありがとうございました。

関連する問題