วิธีแบ่งบรรทัดจาก css โดยไม่ใช้ <br /> ได้อย่างไร


398

เอาท์พุท:

สวัสดี
คุณเป็นอย่างไร

รหัส:

<p>hello <br> How are you </p>

วิธีการบรรลุผลเดียวกันโดยไม่<br>?

คำตอบ:


385

เป็นไปไม่ได้ที่มีโครงสร้าง HTML เดียวกันคุณต้องมีบางสิ่งบางอย่างที่จะแยกแยะระหว่างและHelloHow are you

ฉันขอแนะนำให้ใช้spans ที่คุณจะแสดงเป็นบล็อก (เหมือน<div>จริง)

p span {
  display: block;
}
<p><span>hello</span><span>How are you</span></p>


37
โปรดทราบว่ามีการเพิ่มมาร์คอัปเพิ่มเติมอีกเท่าไร - <br />องค์ประกอบมีอยู่ด้วยเหตุผลที่ดีมาก หากคุณต้องการให้ตัวแบ่งบรรทัดเนื่องจากย่อหน้าแยกกันเพียงทำเครื่องหมายย่อหน้าเหล่านั้นเป็นย่อหน้าแยกกัน
Rowland Shaw

8
คุณอาจต้องการบรรทัดที่มีโครงสร้างโดยไม่ต้องใช้ย่อหน้าจริง ๆ ในการทำเครื่องหมายบทกวีเพลงหรือที่อยู่ตัวอย่างเช่น
Vincent Robert

2
@VincentRobert ถูกต้อง แต่บทกวีเป็นตัวอย่างที่ยอมรับได้สำหรับเมื่อ<br>มาร์กอัปที่ถูกต้อง การครอบคลุมบทกวีจะ“ ผิด”
Alan H.

8
โปรดทราบว่าการกำหนด display: block ให้กับองค์ประกอบจะบังคับให้มีการขึ้นบรรทัดใหม่ก่อนและหลังและดังนั้นจึงไม่เหมือนกับการมีตัวแบ่งบรรทัดหนึ่งครั้ง
jerseyboy

17
ใช้องค์ประกอบ <p> อย่างแน่นอน ไม่ควรสร้างองค์ประกอบ <span> เป็น display: block จุดรวมของ <span> นั้นเป็นแบบอินไลน์ ฉันจะทำเช่นนี้: <div><p>hello</p> <p> คุณเป็นอย่างไร </p> </div> ไม่จำเป็นต้องใช้ CSS
ไมล์

353

คุณสามารถใช้white-space: pre;เพื่อทำให้องค์ประกอบทำหน้าที่เหมือน<pre>กันซึ่งรักษาบรรทัดใหม่ไว้ ตัวอย่าง:

p {
  white-space: pre;
}
<p>hello 
How are you</p>

หมายเหตุสำหรับ IE ที่ใช้งานได้กับ IE8 + เท่านั้น


133
มักจะดีกว่าpreคือpre-lineซึ่งช่วยให้ห่อ
Alan H.

14
ข้อมูลเพิ่มเติมเกี่ยวกับความแตกต่างระหว่าง pre-line และ pre-wrap ที่developer.mozilla.org/en-US/docs/Web/CSS/white-space
patrick

1
ฉันชอบ pre ในกรณีของฉันเพราะฉันยังสามารถใช้ text-overflow ได้ด้วย
Greg

โปรดทราบว่าสิ่งนี้จะใช้งานไม่ได้กับการตอบสนองเพราะในที่สุดข้อความจะถูกรวมเข้าด้วยกันและจะถูกวางในบรรทัดเดียวกันซึ่งจะไม่ทำให้เกิดwhite-spaceกฎ CSS
Vadorequest

119

ใช้<br/>ตามปกติ แต่ซ่อนไว้display: noneเมื่อคุณไม่ต้องการ

ฉันคาดหวังว่าคนส่วนใหญ่ที่พบคำถามนี้ต้องการใช้การออกแบบ css / responsive เพื่อตัดสินใจว่าจะมีการขึ้นบรรทัดใหม่หรือไม่ในบางสถานที่ (และไม่มีอะไรเป็นส่วนตัวกับ<br/>)

แม้ว่าจะไม่ชัดเจนในทันทีคุณสามารถนำdisplay:noneไปใช้กับ<br/>แท็กเพื่อซ่อนมันได้ซึ่งทำให้สามารถใช้การสืบค้นสื่อแบบควบคู่ควบคู่กับ semantic sem tags

 <div>
   The quick brown fox<br />
   jumps over the lazy dog
 </div>

 @media screen and (min-width: 20em) 
 {
    br 
    { 
       display: none;   // hide the BR tag for wider screens (i.e. disable the line break)
    }
 }

สิ่งนี้มีประโยชน์ในการออกแบบที่ตอบสนองซึ่งคุณต้องบังคับให้ข้อความเป็นสองบรรทัดในช่วงพักที่แน่นอน

http://jsfiddle.net/nNbD3/1/


5
Simon คุณเป็นคนจุด - ตัวอย่างที่คุณชื่อคือเหตุผลที่แน่นอนที่ฉันค้นคว้าคำถามนี้และการdisplay: noneแก้ปัญหานั้นเหมาะสมและมีประโยชน์มากที่สุด
abbottjam

8
โปรดทราบว่าสำหรับกรณีที่มันจะก่อให้เกิดคำพูดที่จะทำงานร่วมกันคุณสามารถใช้สิ่งที่ชอบแทนdisplay: inline-block; width: 1em; none
Beejor

2
คุณสามารถใช้ชั้นเรียนเพื่อ<br class='foo'>ถ้าคุณต้องการการควบคุมมากขึ้น แต่อย่าไปบ้าเกินไป!
Simon_Weaver

อีก "ทำไมฉันไม่คิดอย่างนี้?!" ตอบ. <br/>ยอดเยี่ยมในสิ่งที่ทำ ไม่จำเป็นต้องบูรณาการล้อ ขอบคุณ!
rinogo

แนวคิดที่คล้ายคลึงกันนี้สามารถนำไปใช้กับเค้าโครงแบบเฟล็กซ์บ็อกซ์ได้: stackoverflow.com/questions/29732575/…
Simon_Weaver

106

มีหลายตัวเลือกสำหรับกำหนดการจัดการพื้นที่สีขาวและตัวแบ่งบรรทัด ถ้ามีใครสามารถใส่เนื้อหาลงใน<p>แท็กได้มันก็ง่ายที่จะได้สิ่งที่ต้องการ

สำหรับรักษาเส้นแบ่ง แต่ไม่ใช้ช่องว่างสีขาวใช้pre-line(ไม่pre) เหมือนใน:

<style>
 p {
     white-space: pre-line; /* collapse WS, preserve LB */
   }
</style>

<p>hello
How are you</p>

หากต้องการพฤติกรรมอื่นให้เลือกหนึ่งในเหล่านี้ (WS = WhiteSpace, LB = LineBreak):

     white-space: normal;   /* collapse WS, wrap as necessary, collapse LB */
     white-space: nowrap;   /* collapse WS, no wrapping,       collapse LB */
     white-space: pre;      /* preserve WS, no wrapping,       preserve LB */
     white-space: pre-wrap; /* preserve WS, wrap as necessary, preserve LB */
     white-space: inherit;  /* all as parent element */

แหล่งที่มา: โรงเรียน W3


4
สมบูรณ์ ควรเป็นคำตอบที่เลือก
เบ็นลิน

1
ฉันเชื่อว่านี่คือสิ่งที่ OP กำลังมองหา
John Sardinha

64

"\ เป็น"คำสั่งใน CSS สร้างผลตอบแทนการขนส่ง นี่คือ CSS ไม่ใช่ HTML ดังนั้นมันจะเข้าใกล้สิ่งที่คุณต้องการมากขึ้น: ไม่มีมาร์กอัปพิเศษไม่มีมาร์กอัปพิเศษ

ใน blockquote ตัวอย่างด้านล่างแสดงทั้งชื่อและลิงค์แหล่งข้อมูลและแยกทั้งสองอย่างด้วย carriage return ( "\a"):

blockquote[title][cite]:after {
    content:attr(title)"\a"attr(cite)
}

แฟนซี แต่ไม่จำเป็นเลยสำหรับคำถามนี้
YePhIcK

15
+1 เนื่องจาก CSS เท่านั้นและไม่แนะนำให้ใช้ pre, แท็ก br หรือเปลี่ยนโหมดการแสดงผลเป็นบล็อก (ซึ่งเพิ่มพฤติกรรมที่แตกต่างกันอาจแตกถ้าผู้ปกครองอยู่ในdisplay:flexและดังนั้นจึงเป็นแฮ็คในบริบทนี้) มันไม่แฟนซีจริงๆเพียงเทคนิคที่ทันสมัย ถ้าคุณต้องการมาร์กอัปที่เหมือนกัน แต่การตอบสนองที่แตกต่างกันนั้นเป็นวิธีที่จะไป
renoirb

ความคิดหลักแหลม. หมายเหตุ"- อย่าใช้เครื่องหมายคำพูดง่าย ๆ'เพราะคุณต้องการอนุญาตให้\aแยกวิเคราะห์เป็นอักขระพิเศษ
Hafenkranich

2
ฉันต้องการให้ +1 แต่ไม่ได้ผลกับฉันใน chrome 55
pery mimon

4
ฉันจะได้รับการโหวตถ้ามี HTML และบางทีซอเพื่อช่วยให้เห็นภาพสิ่งที่คุณกำลังทำอยู่
John

29

ที่ CSS ใช้รหัส

p {
    white-space: pre-line;
}

ด้วยรหัสนี้ css ทุก ๆ การป้อนภายในแท็ก P จะเป็นตัวแบ่งบรรทัดที่ html


1
นี่คือสิ่งที่ฉันกำลังมองหา! ทำงานอย่างสมบูรณ์แบบสำหรับเนื้อหาองค์ประกอบที่สร้างขึ้นจาก JS (เช่นผล JSON จากแบบสอบถาม AJAX, เชิงมุม-สคีรูปแบบอื่น ๆ ) ที่ได้รับผ่านการหลบหนี / ฆ่าเชื้อ (เช่น AngularJS ปกติหลบหนีพฤติกรรมเมื่อไม่ได้ใช้ ngBindHtml)
สเตฟาน Dragnev

28

ต่อจากสิ่งที่เคยกล่าวมานี้เป็นโซลูชัน CSS ที่ใช้งานได้จริง

<style>
  span {
    display: inline;
  }
  span:before {
    content: "\a ";
    white-space: pre;
  }
</style>
<p>
  First line of text. <span>Next line.</span>
</p>

ฉันเพิ่งพบความแตกต่างในวิธีการนี้จะเป็นประโยชน์สำหรับตัวชี้input type='text', wrapping the input, and then laying the text over it with a wrapper div . That also requires เหตุการณ์หลายบรรทัด: none; ` :beforeในเพื่อที่จะยังคงสามารถคลิกที่ปุ่มด้านล่าง
Eric Lease

10
<pre> <---------------------------------------
lorem ipsum
lorem ipsum
lorem ipsum
lorem ipsum
lorem ipsum
</pre> <--------------------------------------

หรือ

<div style="white-space:pre">  <-----------------------------------
lorem ipsum
lorem ipsum
lorem ipsum
lorem ipsum
lorem ipsum
</div>                         <-----------------------------------

แหล่งที่มา: https://stackoverflow.com/a/36191199/2377343


9

ในการทำให้องค์ประกอบมีตัวแบ่งบรรทัดหลังจากนั้นให้กำหนด:

display:block;

องค์ประกอบที่ไม่ลอยหลังจากองค์ประกอบระดับบล็อกจะปรากฏในบรรทัดถัดไป องค์ประกอบหลายอย่างเช่น <p> และ <div> เป็นองค์ประกอบระดับบล็อกอยู่แล้วดังนั้นคุณจึงสามารถใช้องค์ประกอบเหล่านั้นได้

แต่ในขณะนี้เป็นการดีที่จะรู้จริง ๆ แล้วมันขึ้นอยู่กับบริบทของเนื้อหาของคุณ ในตัวอย่างของคุณคุณไม่ต้องการใช้ CSS เพื่อบังคับให้มีการขึ้นบรรทัดใหม่ <br /> เหมาะสมเพราะความหมายของแท็ก p นั้นเหมาะสมที่สุดสำหรับข้อความที่คุณกำลังแสดง มาร์กอัปเพิ่มเติมเพียงเพื่อวาง CSS มันไม่จำเป็น ในทางเทคนิคมันไม่ตรงย่อหน้า แต่ไม่มี <ทักทาย> แท็กเพื่อใช้สิ่งที่คุณมี การอธิบายเนื้อหาของคุณให้ดีด้วย HTMl นั้นมีความสำคัญมากขึ้นหลังจากที่คุณมีแล้วลองหาวิธีทำให้มันดูสวย


1
แต่สิ่งนี้ทำให้เต็มความกว้างของคอนเทนเนอร์ซึ่งอาจเป็นผลข้างเคียงที่ไม่พึงประสงค์ (โดยเฉพาะอย่างยิ่งถ้ารายการนั้นเป็นจุดยึด / ลิงค์)
NickG

ใช่โดยค่าเริ่มต้นองค์ประกอบระดับบล็อกใช้ความกว้างเต็มเว้นแต่คุณจะตั้งค่าความกว้าง อ่านย่อหน้าของฉันเกี่ยวกับบริบท - การคิดในแง่ของบริบทความหมายมากกว่าการเลือก html ของคุณตามการออกแบบของคุณโดยทั่วไปจะช่วยป้องกันไม่ให้คุณประสบปัญหาเช่นนั้น
ข้อผิดพลาดทางไวยากรณ์

1
บ่อยครั้งที่เหตุผลที่ต้องหลีกเลี่ยงแท็กคือเทคนิคมากกว่าความหมาย แท็ก <br> เป็นแบบสแตนด์อโลนและคุณไม่สามารถใช้งานได้เนื่องจากคุณไม่ทราบว่าองค์ประกอบที่อยู่ข้างหน้าจะมีอยู่ในเวลาที่คุณแสดงหน้าหรือไม่ดังนั้นคุณอาจไม่ต้องการบรรทัดว่าง พิจารณารายการ <a> ลิงก์ในเมนูแนวตั้งที่คุณต้องการให้ลิงก์ทั้งหมดเป็นของตัวเอง แต่ไม่สามารถใช้ <br> เนื่องจากคุณไม่รู้ว่าลิงก์ใดจะถูกซ่อนเนื่องจากกฎฝั่งเซิร์ฟเวอร์ การซ่อนลิงก์จะทำให้บรรทัดว่างหากใช้ <br>
NickG

1
.. ด้วยเหตุนี้ผู้คนมักใช้รายการ <ul> แล้วซ่อนสัญลักษณ์แสดงหัวข้อย่อย มันจะดีกว่าถ้ามีกฎ CSS ที่เพิ่งพูดว่า "แสดงผลเสมอในสายของตัวเอง"
NickG

1
แต่อย่างที่ฉันพูดในความคิดเห็นแรกของฉัน - ที่มีผลข้างเคียงที่ไม่พึงประสงค์ขององค์ประกอบที่มีความกว้างเต็ม :) ฉันแค่ต้องการรายการในบรรทัดใหม่โดยที่พวกเขาไม่ได้เต็มความกว้าง หากรายการนั้นเป็นลิงค์ทางด้านซ้ายสุดของหน้านั่นหมายถึงการคลิกที่ด้านขวาสุดของหน้าจอตามลิงค์
NickG

8

ต่อไปนี้เป็นวิธีแก้ปัญหาที่ไม่ดีสำหรับคำถามที่ไม่ดี แต่มีคำตอบที่ตรงตามตัวอักษร:

p {
    width : 12ex;
}

p:before {
    content: ".";
    float: right;
    padding-left: 6ex;
    visibility: hidden;
}

1
พิมพ์ผิดหรือควรexจะเป็นอย่างไร pและeไม่ได้อยู่ใกล้กับแป้นพิมพ์นั่นคือเหตุผลที่ฉันถาม
MMachinegun


1
ไม่ดีหรือไม่จริง ๆ แล้วมันค่อนข้างฉลาด
Jonathan Dumaine

5

สำหรับรายการลิงค์

คำตอบอื่น ๆ ให้วิธีที่ดีในการเพิ่มตัวแบ่งบรรทัดขึ้นอยู่กับสถานการณ์ แต่ควรสังเกตว่า:afterตัวเลือกเป็นหนึ่งในวิธีที่ดีกว่าในการทำเช่นนี้เพื่อควบคุม CSS รายการลิงก์ (และสิ่งที่คล้ายกัน) ด้วยเหตุผลที่ระบุไว้ด้านล่าง

นี่คือตัวอย่างสมมติว่าสารบัญ:

<style type="text/css">
    .toc a:after{ content: "\a"; white-space: pre; }
</style>

<span class="toc">
    <a href="#a1">Item A1</a> <a href="#a2">Item A2</a>
    <a href="#b1">Item B1</a> <a href="#b2">Item B2</a>
</span>

และนี่คือเทคนิคของ Simon_Weaver ซึ่งง่ายกว่าและเข้ากันได้มากกว่า มันไม่ได้แยกสไตล์และเนื้อหาออกมามากต้องใช้โค้ดมากขึ้นและอาจมีบางกรณีที่คุณต้องการเพิ่มตัวแบ่งหลังจากข้อเท็จจริง ยังคงเป็นทางออกที่ดีโดยเฉพาะสำหรับ IE รุ่นเก่า

<style type="text/css">
    .toc br{ display: none; } /* comment out for horizontal links */
</style>

<span class="toc">
    <a href="#a1">Item A1</a><br/> <a href="#a2">Item A2</a><br/>
    <a href="#b1">Item B1</a><br/> <a href="#b2">Item B2</a><br/>
</span>

บันทึกข้อดีของการแก้ปัญหาข้างต้น:

  • ไม่ว่าจะเป็นช่องว่างใน HTML ผลลัพธ์จะเหมือนกัน (เทียบกับpre)
  • ไม่มีการเพิ่มส่วนเสริมเข้าไปในองค์ประกอบ (ดูdisplay:blockความคิดเห็นของ NickG )
  • คุณสามารถสลับระหว่างรายการลิงก์ในแนวนอนและแนวตั้งด้วย CSS ที่ใช้ร่วมกันโดยไม่ต้องเปลี่ยนไฟล์ HTML ทุกไฟล์เพื่อเปลี่ยนสไตล์
  • ไม่มีfloatหรือclearรูปแบบที่มีผลต่อเนื้อหาโดยรอบ
  • สไตล์นี้แยกจากเนื้อหา (เทียบกับ<br/>หรือpreตัวแบ่งแบบตายตัว)
  • นอกจากนี้ยังสามารถทำงานกับลิงก์ที่หลวมโดยใช้a.toc:afterและ<a class="toc">
  • คุณสามารถเพิ่มตัวแบ่งหลายและแม้กระทั่งคำนำหน้า / ข้อความต่อท้าย

4

อาจมีบางคนมีปัญหาแบบเดียวกันกับฉัน:

ผมอยู่ในองค์ประกอบที่มีเพื่อให้ฉันได้ใช้display: flexflex-direction: column


4

การตั้งค่าbrแท็กเป็นdisplay: noneเป็นประโยชน์ แต่จากนั้นคุณสามารถจบด้วย WordsRunTogether ฉันพบว่ามีประโยชน์มากกว่าแทนที่จะแทนที่ด้วยอักขระเว้นวรรคเช่น:

HTML:

<h1>
    Breaking<br />News:<br />BR<br />Considered<br />Harmful!
</h1>

CSS:

@media (min-device-width: 1281px){
    h1 br {content: ' ';}
    h1 br:after {content: ' ';}
}

2
นอกจากนี้คุณยังสามารถพิจารณาการตั้งค่าbrการdisplay: inline-block; width: 1em;ซึ่งควรป้องกันไม่ให้คำจากการทำงานร่วมกันเมื่อไปในแนวนอน
Beejor

1
ฉันชอบคำแนะนำของคุณดีกว่า ฉันจะลองครั้งต่อไปที่ฉันพบสิ่งนี้
ไบรอัน

3

วิธีการเกี่ยวกับ<pre>แท็ก?

แหล่งที่มา: http://www.w3schools.com/tags/tag_pre.asp


Oh! ฉันเห็นสิ่งที่คุณหมายถึง จากนั้นคุณใช้ช่องว่างในของคุณ<pre>เพื่อที่จะแบ่งบรรทัด ถ้าคุณต้องการมีช่องว่างปกติ
Micha Mazaheri

แท็กก่อนหน้าจะตีความการขึ้นบรรทัดใหม่ที่ทำภายใน ดังนั้นหากคุณแบ่งเส้นแบ่งระหว่าง 'สวัสดี' และ 'คุณเป็นอย่างไร' ในแท็กล่วงหน้าการพักจะถูกแสดง
Godineau Félicie

2

คุณสามารถเพิ่มช่องว่างภายในจำนวนมากและบังคับให้ข้อความแยกเป็นบรรทัดใหม่ตัวอย่างเช่น

p{
    padding-right: 50%;
}

ทำงานได้ดีสำหรับฉันในสถานการณ์ที่มีการออกแบบที่ตอบสนองซึ่งภายในช่วงความกว้างที่กำหนดเท่านั้นจึงจำเป็นต้องแยกข้อความ


1
ฟังดูเป็นความคิดที่ดี แต่การเพิ่มช่องว่างภายในจะเพิ่มความกว้างโดยรวมของวัตถุด้วย และนั่นอาจมีผลกระทบเชิงลบโดยเฉพาะในกรณีของหน้าตอบสนอง
itsols

1

ฉันชอบวิธีแก้ปัญหาง่ายๆนี่คืออีกหนึ่ง

<p>hello <span>How are you</span></p>

และ css

p {
 display: flex;
 flex-direction: column;
}


1

<span class="class_name"></span>คุณจำเป็นต้องประกาศเนื้อหาภายใน หลังจากนั้นเส้นจะถูกทำลาย

\A หมายถึงอักขระตัวดึงข้อมูลบรรทัด

.class_name::after {
  content: "\A";
  white-space: pre;
}

0

ทั้งคำตอบของ Vincent Robert และ Joey Adams นั้นถูกต้อง อย่างไรก็ตามหากคุณไม่ต้องการเปลี่ยนมาร์กอัปคุณสามารถแทรก a<br />จาวาสคริปต์ได้โดยใช้

ไม่มีวิธีที่จะทำใน CSS โดยไม่เปลี่ยนมาร์กอัพ


นั่นไม่ถูกต้อง หนึ่งสามารถใช้:afterหรือ:beforeทำเช่นนั้น
Artur Bodera

0

ในกรณีของฉันฉันต้องการปุ่มอินพุตเพื่อให้มีตัวแบ่งบรรทัดก่อนหน้า
ฉันใช้สไตล์ต่อไปนี้กับปุ่มและใช้งานได้:

clear:both;

0

ในกรณีนี้จะช่วยให้ใครบางคน ...

คุณสามารถทำได้:

<p>This is an <a class="on-new-line">inline link</a>?</p>

ด้วย CSS นี้:

a.on-new-line:before { 
  content: '&nbsp;'; 
  font-size:0; 
  display:block;
  line-height:0;
}

หรือ.on-new-line:before {content: ""; display: block;}
meuwka

0

การใช้&nbsp;แทนช่องว่างจะป้องกันการหยุดพัก

<span>I&nbsp;DONT&nbsp;WANT&nbsp;TO&nbsp;BREAK&nbsp;THIS&nbsp;LINE&nbsp;UP, but this text can be on any line.</span>


0

ฉันเดาว่าคุณไม่ต้องการใช้เบรกพอยต์เพราะมันจะทำให้เกิดเส้นแบ่ง ถูกต้องไหม ถ้าอย่างนั้นเกี่ยวกับการเพิ่มเบรกพอยต์<br />ในข้อความของคุณแล้วให้มันเป็นชั้นเช่น<br class="hidebreak"/>นั้นใช้แบบสอบถามสื่อด้านขวาขนาดที่คุณต้องการที่จะทำลายเพื่อซ่อน<br />มันจึงแตกที่ความกว้างที่เฉพาะเจาะจง

HTML:

<p>
The below line breaks at 766px.
</p>

<p>
 This is the line of text<br class="hidebreak"> I want to break.
</p>

CSS:

@media (min-width: 767px) {
  br.hidebreak {display:none;}
}

https://jsfiddle.net/517Design/o71yw5vd/


ฉันเพิ่งสังเกตเห็นว่า Simon_Weaver โพสต์คำตอบที่คล้ายกับของฉัน ขออภัย Simon ไม่ได้พยายามคัดลอกคำตอบของคุณ ฉันไม่ได้อ่านคำตอบทั้งหมดก่อนที่จะโพสต์ของฉันและไม่ได้สังเกตเห็นคุณ บทเรียนที่ไม่ดีของฉันได้เรียนรู้ .. ฉันจะอ่านคำตอบอื่น ๆ ก่อนโพสต์ของฉันในอนาคต
Krankit

ไม่ต้องห่วง! แต่คุณต้องเขียนบทกวีให้ฉัน จากw3schools.com/tags/tag_br.asp "Tip: The <br> tag is useful for writing addresses or poems."
Simon_Weaver

0

รหัสสามารถ

<div class="text-class"><span>hello</span><span>How are you</span></div>

CSS จะเป็น

.text-class {
     display: flex;
     justify-content: flex-start;
     flex-direction: column;
     align-items: center;
 }

-1

อย่า หากคุณต้องการตัวแบ่งบรรทัดที่ยากใช้หนึ่ง


3
+1 ใช่ display: block;แต่ถ้าบรรทัดใหม่หมดจดเพื่อใช้นำเสนอ
Web_Designer

21
ฉันไม่เข้าใจว่าทำไมคำตอบนี้ได้รับคะแนนโหวตมากขึ้น หากฉันมีความสามารถในการใช้ตัวแบ่งบรรทัดอย่างหนักฉันจะไม่ดูคำถามนี้
trliner
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.