0

さて、私のサイトでは、ユーザーが自分自身や好きなものについて説明できるようにしていますが、[ENTERKEY] を使用して中断しようとすると、<textarea>次のようになります。

Hello, I am John Smith.
Phone#: (123)456-7890
I enjoy web-browsing.

ページに戻ると、まったく同じように見えます (現在の説明が編集ボックスに表示されます)。これが私が欲しいものです。PHP データベースを調べましたが、同じように見えます。繰り返しますが、それは私が欲しいものです。ただしプロフィールページではこんな感じ

Hello, I am John Smith. Phone#: (123)456-7890 I enjoy web-browsing.

これらのスタイルタグなどを含むdiv内に含まれています

        <div style="width: 250px; min-height: 50px; margin: auto; font-weight: normal; text-align: center; padding: 2px; margin-bottom: 5px;">
            <?php echo $description; ?>
        </div>

なぜこれを行うのか、どんな助けでもありがたいです:D.

4

3 に答える 3

0

または、次を使用white-space:pre-lineします。<div>

<?= nl2br($description); ?>

HTMLにはor<br />ではなく改行が必要であることに注意してください (あなたが集めているように)。したがって、 を使用してこれらの新しい行に注意を払うように HTML に指示するか、を使用して強制することができます。\n\r\n<textarea>white-space<br />nl2br

于 2013-09-24T23:43:56.270 に答える
0

テキストエリアに改行を入力すると、それは として保存され\nますが、HTML は改行を尊重しません\n。そのため、div 内ではすべてが 1 行で表示されます。

これを修正するには、\n<br />( を使用してnl2br()) HTML が認識するものに変換する必要があります。

<div style="width: 250px; min-height: 50px; margin: auto; font-weight: normal; text-align: center; padding: 2px; margin-bottom: 5px;">
    <?php echo nl2br($description); ?>
</div>
于 2013-09-24T23:43:56.567 に答える
0

これは、通常の改行を HTML としてレンダリングしようとすると、HTML が空白文字を無視するためです。HTML で改行を作成するには、明示的に<br>(またはDOCTYPE に応じて)使用する必要があります。<br/>

PHP でこれを行う最も簡単な方法はnl2br()、出力で PHP の関数を使用することです。

于 2013-09-24T23:44:55.650 に答える