จะเปลี่ยนความสูงของ <br> ได้อย่างไร?


263

ฉันมีข้อความใหญ่ย่อหน้าหนึ่งซึ่งแบ่งออกเป็นย่อหน้าย่อยด้วย<br>:

<p>
  Blah blah blah.
  <br/>
  Blah blah blah. Blah blah blah. Blah blah blah.
  <br/>
  Blah blah blah.
</p>

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

ฉันได้พยายามตั้งค่า<br>'s line-heightและheightมีdisplay: blockฉันยัง Googled และกองมากเกิน-ED สั้น ๆ แต่ไม่ได้หาทางแก้ปัญหาใด ๆ สิ่งนี้เป็นไปได้หรือไม่โดยไม่ต้องเปลี่ยนเลย์เอาต์?


การจัดรูปแบบของคุณอาจเพิ่มความสับสนในการคิดว่าแท็ก br มีค่าสูง ตามที่ระบุไว้ด้านล่างพวกเขาเป็นเพียงตัวแบ่งบรรทัด คุณได้ลองทำสิ่งที่คล้ายกันในโปรแกรมประมวลผลคำของคุณหรือไม่?
Jörg

การเปลี่ยนความสูงของ <br> เป็นความหมายที่ผิด <br> หมายความว่าคุณใส่บรรทัดอื่นในข้อความของคุณและย่อหน้าเดียวควรมีความสูงบรรทัดคงที่ หากมีการแยกข้อความบางส่วนควรเป็นย่อหน้าแยกต่างหาก
Robo Robok


1
@JohnHenckel ทำให้เข้าใจผิดเล็กน้อยเนื่องจาก<p>แท็กไม่สามารถมี<div>แท็กดูโพสต์นี้
deseosuho

1
บางครั้งรหัสที่เราได้รับในการจัดรูปแบบไม่ใช่สิ่งที่เราสามารถควบคุมได้ มันเป็นช่วงเวลาที่คุณเริ่มพูดกับตัวเองว่า "ฉันไม่สามารถเพิ่มแท็ก <p> ... ถ้าฉันแค่เปลี่ยนความสูงของเกมที่ใช้เป็นสเปเซอร์แทน
ไบรอัน

คำตอบ:


275

css:

br {
   display: block;
   margin: 10px 0;
}

การแก้ปัญหาอาจไม่เข้ากันข้ามเบราว์เซอร์ แต่เป็นอย่างน้อย พิจารณาการตั้งค่าด้วยline-height:

line-height:22px;

สำหรับ Google Chrome ให้พิจารณาการตั้งค่าcontent:

content: " ";

นอกจากนั้นฉันคิดว่าคุณติดอยู่กับโซลูชัน JavaScript


31
สิ่งนี้ไม่ทำงานใน: IE7, Opera10, Chrome2 ใน Firefox จะสร้างมาร์จิ้นเป็นสองเท่า คุณจำเป็นต้องระบุmargin-top: 10px;
awe

8
เพิ่มcontent:" "แอตทริบิวต์ให้กับสไตล์นั้นและใช้งานได้ดีใน Chrome
anushr

8
วิธีนี้ใช้ได้กับ Firefox สำหรับเบราว์เซอร์ที่ใช้ webkit คุณสามารถเพิ่มline-heightได้ br { display:block; margin-top:10px; line-height:22px; }ในท้ายที่สุดมันเป็นสิ่งที่ชอบ
คธูลู

2
@awe: ทางออกที่ดีกว่าmargin:10px 0 0คือสำหรับผู้ที่ไม่ต้องการสองขนาด
Kayla

1
ใช้งานไม่ได้สำหรับฉัน ... ฉันลองใช้รหัสของ @wewe margin-top: 10px;แล้วยังใช้งานไม่ได้ ...
Cardinal - Reinstate Monica

67

นี่คือทางออกที่ถูกต้องที่จริงมีการสนับสนุนข้ามเบราว์เซอร์:

  br {
        line-height: 150%;
     }

1
ไม่ใช่ IE7 เท่าที่ฉันจะบอกได้
Serhiy

30
งานนี้สำหรับการเพิ่มความสูงของตัวแบ่งบรรทัด แต่ไม่ได้ลดลงมัน
พลูโต

2
@htmldrum เมื่อคุณไม่มีโอกาสเปลี่ยน HTML แต่ใช้ CSS ได้ผลดีมาก ขอบคุณ! นี่ควรเป็น upvoteed และถือเป็นคำตอบที่ถูกต้อง ฉันคิด.
flaschbier

@Pluto: คำตอบของไนเจลด้านล่างใช้งานได้เพื่อลดความสูง!
Anupam

2
น่าเสียดายที่ Chrome v.76 ไม่ทำงานอีกต่อไป สำหรับ Edge และ IE คุณต้องเพิ่มการจัดแนวตั้ง: ด้านบน ฉันโพสต์โซลูชันที่นี่: stackoverflow.com/a/29674365/562862
Dave Burton

48

ดังนั้นการแอบดูด้านบนจึงเป็นคำตอบที่คล้ายกันโดยทั่วไป แต่นี่มันรวบรัดมาก ใช้งานได้ใน Opera, Chrome, Safari & Firefox, IE น่าจะเป็นเช่นกัน?

br {
            display: block; /* makes it have a width */
            content: ""; /* clears default height */
            margin-top: 0; /* change this to whatever height you want it */
}

3
นี้. สิ่งนี้ถูกต้องสัมพันธ์กับคำถามตามที่ระบุไว้ และเป็นคำตอบเดียวในหน้าเว็บที่ทำสิ่งที่ฉันต้องการจริง ๆ
Xodarap777

ไม่มีคำตอบอื่นใดที่เหมาะกับฉันจนกว่าฉันจะแก้ไขเนื้อหา นี่คือคำตอบที่ถูกต้อง IMO
Xandor

39

อีกวิธีหนึ่งคือการใช้ทรัพยากรบุคคล แต่และนี่คือส่วนที่มีไหวพริบทำให้มองไม่เห็น

ดังนั้น:

<hr style="height:30pt; visibility:hidden;" />

เพื่อให้การจำลอง BR สะอาดยิ่งขึ้นโดยใช้ HR: Btw ใช้ได้กับเบราว์เซอร์ทั้งหมด !!

{ height:2px; visibility:hidden; margin-bottom:-1px; }

1
ฉันต้องเพิ่มมาร์
จิ้น

34
นั่นคือการละเมิดที่น่ากลัวของแท็กดีกว่าการใช้<p></p>ที่มีอัตรากำไรแล้วทำลาย<hr />
Serj เซแกน

เคล็ดลับนี้เป็นสิ่งที่ดี แต่เพื่อให้ได้ผลลัพธ์ที่แม่นยำยิ่งขึ้นคุณต้องใช้ระยะขอบ: 0 และเส้นขอบ: 0.
MAChitgarha

25

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


1
ดูเหมือนว่าไม่มีทางจริงๆ ฉันเคยลองเล่นกับ: ก่อนและ: หลังจากคุณสมบัติ แต่ ... :(
n1313

1
ฉันรู้ว่ามันเก่ามาก แต่ @Isaac Minogue มีวิธีที่ถูกต้องในการทำเช่นนี้ การปรับเปลี่ยนcontentคุณสมบัติไม่หลอกลวง
Xandor

22

ฉันเพิ่งมีปัญหานี้และฉันได้รอบโดยใช้

<div style="line-height:150%;">
    <br>
</div>

นี้ทำงานได้ดีและยังได้รับเลี่ยงข้อ จำกัด ของคำตอบ @ htmldrum ของ
Anupam

11

คุณสามารถใช้ความสูงบรรทัดกับ<p>องค์ประกอบนั้นได้ดังนั้นเส้นจึงใหญ่ขึ้น


4
ใช่แน่นอน แต่นั่นไม่ใช่สิ่งที่ฉันต้องการ
n1313

1
สิ่งที่แตกต่างจากสิ่งที่คุณต้องการในทางใด มันจะเพิ่มช่องว่างระหว่างเส้น
Jörg

ฉันมีมากกว่าเก้า blah ในข้อความของฉัน ลองนึกภาพข้อความหลายกิโลไบต์แบ่งออกเป็นสามช่วงตึกด้วยสามของ
n1313

หากคุณใช้ line-height กับ<br>แท็กแล้วแบ่งบรรทัดบังคับจะมีขนาดใหญ่กว่าตัวแบ่งบรรทัดห่อ ...
peirix

1
เสียงมากขึ้นเช่นคุณต้องการสามย่อหน้าแทนที่จะใช้ <br/>
คริส Chilvers

7

ผมไม่ได้พยายาม:before/ :afterCSS2 หลอกองค์ประกอบก่อนส่วนใหญ่เป็นเพราะได้รับการสนับสนุนเฉพาะใน IE8 (นี้เกี่ยวกับเบราว์เซอร์ IE) นี่อาจเป็นโซลูชัน CSS ที่เป็นไปได้เท่านั้น:

br:before {
    display: block;
    margin-top: 10px;
    content: "";
}

นี่คือตัวอย่างในquirksmode


ใช่ฉันมีความหวังสูง: ก่อนหน้า {content}; เหมือนกัน แต่มันก็ล้มเหลว
n1313

ฉีดที่ใดที่หนึ่งมันควรจะทำงาน อนิจจามันไม่ทำงานใน IE6 / 7
Filip Dupanović

5

ฉันคิดว่าคุณอาจจะสามารถใช้:

br:after {
    content: ".";
    visibility: hidden;
    display: block;
}

แต่นั่นใช้ไม่ได้กับ chrome หรือ firefox

แค่คิดว่าฉันจะพูดถึงว่าในกรณีที่มันเกิดขึ้นกับคนอื่นและฉันจะช่วยให้พวกเขามีปัญหา


5
br {   
    content: "";
    margin: 2em;
    display: block;
    margin-bottom: -20px; 
 }

ทำงานได้ใน Firefox, Chrome & Safari ยังไม่ได้ทดสอบใน Explorer (แท็บเล็ต Windows ไม่มีพลังงาน)

ตัวแบ่งบรรทัดขนาดตัวอักษรทำงานแตกต่างกันใน Firefox และ Safari


คุณสามารถระบุได้มากขึ้นว่าส่วนใดของ CSS ที่คุณแก้ไขปัญหาได้หรือไม่ สิ่งนี้จะช่วยให้ผู้อื่นเข้าใจคำตอบ
Frank Bryce

ทำงานได้ดีสำหรับฉันขอบคุณ! แต่ขาดข้อมูลบางประเภท
Vinícius Moraes

4

ที่น่าสนใจถ้าเขียนแท็กหยุดพักในแบบเต็มรูปแบบดังต่อไปนี้:

<br></br>

ดังนั้นความสูงบรรทัด CSS: 145% ใช้งานได้ หากเขียนแท็กหยุดพักเป็น:

<br> or 
<br/> 

อย่างน้อยก็ใน Chrome, IE และ firefox แปลก!


4

สิ่งที่ใช้ได้กับฉันคือการเพิ่มอินไลน์ระหว่างแท็กวรรค ... ไม่ใช่วิธีที่ดีที่สุด

<br style="line-height:32px">

-------- แก้ไข ---------

ฉันพบปัญหาเกี่ยวกับ PC / Mac ด้วยสิ่งนี้ ... มันให้ข้อความที่ความสูงบรรทัดใหม่ แต่ไม่ได้ทำการแบ่งบรรทัด ... คุณอาจต้องการทดสอบด้วยตัวเอง ขออภัย!


ทำงานให้ฉันจัดการขนาดแนวตั้งที่ระดับพิกเซลภายใน UIWebView บน iOS
Diwann

ฉันพบปัญหาเกี่ยวกับ PC / Mac ด้วยสิ่งนี้ ... มันให้ข้อความที่ความสูงบรรทัดใหม่ แต่ไม่ได้ทำการแบ่งบรรทัด ... คุณอาจต้องการทดสอบด้วยตัวเอง ขออภัย!
robinwkurtz

4

และโปรดจำไว้ว่า (mis) การใช้<hr>แท็กตามที่แนะนำที่ไหนสักแห่งจะสิ้นสุด<p>แท็กดังนั้นลืมเกี่ยวกับโซลูชันนั้น
ถ้า f.ex บางสิ่งมีสไตล์อยู่โดยรอบ<p>สไตล์นั้นจะหายไปหลังจากที่<hr>แทรกเนื้อหาแล้ว


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

ไม่ใช่คำวิจารณ์และไม่ใช่คำขอ แค่พยายามบอกว่าจะเกิดอะไรขึ้นถ้าคุณใส่แท็ก hr ในแท็ก ap ตามที่แนะนำ และในฐานะผู้มาใหม่ฉันไม่มีชื่อเสียงพอที่จะแสดงความคิดเห็นในโพสต์ที่เกี่ยวข้อง ดังนั้นโปรดให้คำแนะนำว่าฉันควรจะแสดงความคิดเห็นอย่างไร (ซึ่ง IMHO นั้นมีความเกี่ยวข้องอย่างมากกับคำถาม)
niels

4

นี่คือโซลูชันที่ใช้งานได้ใน IE, Firefox และ Chrome แนวคิดคือการเพิ่มขนาดตัวอักษรขององค์ประกอบ br จากขนาดร่างกาย 14px เป็น 18px และลดขนาดองค์ประกอบ 4px ลงเพื่อให้ขนาดพิเศษต่ำกว่าบรรทัดข้อความ ผลลัพธ์คือ 4px ของช่องว่างพิเศษใต้ br

br 
{ 
font-size: 18px; 
vertical-align: -4px; 
}  

แค่ใช้vertical-alignดูเหมือนว่าจะหลอกลวงด้วยbrแท็ก ฉันทดสอบสิ่งนี้บน IE 11

3

อัปเดต 13 กันยายน 2019:

ฉันใช้<br class=big>เพื่อแบ่งบรรทัดขนาดใหญ่เมื่อฉันต้องการ จนถึงวันนี้ฉันตั้งชื่อแบบนี้:

br.big {line-height:190%;vertical-align:top}

( vertical-align:topจำเป็นสำหรับ IE และ Edge เท่านั้น)

ที่ทำงานในเบราว์เซอร์หลัก ๆ ทั้งหมดที่ฉันลอง: Chrome, Firefox, Opera, Brave, PaleMoon, Edge และ IE11

อย่างไรก็ตามเมื่อเร็ว ๆ นี้มันหยุดทำงานในเบราว์เซอร์ที่ใช้ Chrome : ตัวแบ่งบรรทัด "ใหญ่" ของฉันกลายเป็นตัวแบ่งบรรทัดขนาดปกติ

(ฉันไม่รู้แน่ชัดว่ามันพังเมื่อวันที่ 12 ก.ย. 2019 มันยังใช้งานได้ใน Chromium Portable 55.0.2883.11 ที่ล้าสมัยของฉัน แต่มันพังใน Opera 63.0.3368.71 และ Chrome 76.0.3809.132 (ทั้ง Windows และ Android))

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

br.big {display:block; content:""; margin-top:0.5em; line-height:190%; vertical-align:top;}

หมายเหตุ:

line-height:190% ทำงานได้ทุกอย่างยกเว้นเบราว์เซอร์ที่ใช้ Chrome เวอร์ชันล่าสุด

vertical-align:topเป็นสิ่งจำเป็นสำหรับ IE และ Edge (เมื่อรวมกับline-height:190%) เพื่อให้มีพื้นที่ว่างเพิ่มเติมตามหลังบรรทัดก่อนหน้าซึ่งเป็นเจ้าของแทนที่จะเป็นบางส่วนก่อนและบางส่วนหลัง

display:block;content:"";margin-top:0.5em ใช้งานได้ใน Chrome, Opera & Firefox แต่ไม่ใช่ Edge & IE

ทางเลือก (เรียบง่าย) ทางเลือกในการเพิ่มพื้นที่แนวตั้งเล็กน้อยหลังจาก<br>แท็กหากคุณไม่สนใจที่จะแก้ไข HTML ก็มีลักษณะเช่นนี้ มันทำงานได้ดีในเบราว์เซอร์ทั้งหมด:

<span style="vertical-align:-37%"> </span><br>

(แน่นอนคุณสามารถปรับ "-37%" ตามต้องการสำหรับช่องว่างที่ใหญ่ขึ้นหรือเล็กลง) ต่อไปนี้เป็นหน้าตัวอย่างที่มีรูปแบบอื่น ๆ ในชุดรูปแบบ:

https://burtonsys.com/a_little_extra_vertical_space_for_br_tag.html



28 พฤษภาคม 2020:

ฉันได้อัปเดตหน้าตัวอย่างแล้ว มันแสดงให้เห็นถึงเทคนิคข้างต้นทั้งหมด:

https://burtonsys.com/a_little_extra_vertical_space_for_br_tag.html


2

Michael และ yoda นั้นถูกต้องแล้ว สิ่งที่คุณสามารถทำได้คือใช้<p>แท็กซึ่งเป็นแท็กบล็อกใช้ขอบด้านล่างเพื่อชดเชยบล็อกต่อไปนี้ดังนั้นคุณสามารถทำสิ่งที่คล้ายกับสิ่งนี้เพื่อให้ได้ระยะห่างที่กว้างขึ้น:

<p>
    A block of text.
</p>
<p>
    Another block
</p>

อีกทางเลือกหนึ่งคือการใช้<hr>แท็กบล็อกซึ่งคุณสามารถกำหนดความสูงของระยะห่างได้อย่างชัดเจน


1
ขอบคุณสำหรับคำตอบของคุณ แต่ฉันได้กล่าวว่าฉันไม่สามารถเปลี่ยนเค้าโครงนี้ได้ในขณะนี้ แน่นอนฉันจะเปลี่ยนมันเป็นสิ่งที่สุขอนามัยเมื่อมันเป็นไปได้ แต่ตอนนี้ - ขอโทษ
n1313

1

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


1

คุณสามารถใช้คุณสมบัติ "block-quote" ใน CSS ที่จะทำให้มันไม่ได้มีผลต่อแต่ละบรรทัดของคุณ แต่ช่วยให้คุณสามารถตั้งค่าพารามิเตอร์สำหรับเพียงตัวแบ่งระหว่างย่อหน้าหรือ "บล็อกคำพูด"

UPDATE:
ฉันยืนแก้ไขแล้ว "blockquote" เป็นจริงคุณสมบัติ html คุณใช้มันเหมือนกับ <p> และ </ p> รอบ ๆ งานของคุณ จากนั้นคุณสามารถตั้งค่าพารามิเตอร์สำหรับการอ้างอิงบล็อกของคุณใน CSS เช่น

blockquote { margin-top: 20px }

หวังว่านี่จะช่วยได้ มันคล้ายกับการตั้งค่าพารามิเตอร์ใน br และอาจหรือไม่อาจเข้ากันได้ข้ามเบราว์เซอร์


นี่เป็นครั้งแรกที่ฉันเคยได้ยินเกี่ยวกับคุณสมบัตินี้ คุณช่วยอธิบายรายละเอียดเพิ่มเติมได้มั้ย
n1313

ฉันยืนแก้ไขแล้ว "blockquote" เป็นจริงคุณสมบัติ html คุณใช้มันเหมือนกับ <p> และ </ p> รอบ ๆ งานของคุณ จากนั้นคุณสามารถตั้งค่าพารามิเตอร์สำหรับการอ้างอิงบล็อกของคุณใน css เช่น blockquote {margin-top: 20px} ฯลฯ และอื่น ๆ
Jonn

1

ดูเหมือนว่าคุณจะไม่สามารถปรับความสูงของ BR แต่คุณสามารถทำให้มันหายไปอย่างน่าเชื่อถือโดยใช้จอแสดงผล: ไม่มี

มาที่หน้านี้ในขณะที่ค้นหาวิธีการแก้ปัญหาต่อไปนี้:

ฉันมีสถานการณ์ที่เกตเวย์การชำระเงินของบุคคลที่สาม (Worldpay) อนุญาตให้คุณกำหนดหน้าการชำระเงินด้วย CSS และ HTML สูงสุด 10k (ไม่อนุญาตให้ใช้สคริปต์) ที่ได้รับการแทรกลงในเนื้อหาของเทมเพลตและหลังจากแท็ก FONT, FONT เป็นต้น . เมื่อรวมกับ DTD ซึ่งบังคับให้ IE7 / 8 เข้าสู่โหมด Quirks สิ่งนี้ทำให้การปรับแต่งข้ามเบราว์เซอร์ทำได้ยากเท่าที่จะเป็นไปได้!

การปิดสาขาของ BR ทำให้สิ่งต่าง ๆ สอดคล้องกันมากขึ้น ...


1

ฉันใช้วิธีการเหล่านี้ แต่ฉันไม่รู้ว่าข้ามเบราว์เซอร์

================= วิธีที่ 1 ==================

br {
    display:none;
}

หรือ

================= วิธีที่ 2 ==================

br {
    display: block;
    margin-bottom: 2px;
    font-size:2px;
    line-height: 2px;
}
br:before {
    display: block;
    margin-top: 2px;
    content: "";
}
br:after {
    content: ".";
    visibility: hidden;
    display: block;
}

หรือ

================= วิธีที่ 3 ==================

br:after { content: "" }
br { content: "" }

upvote สำหรับการแสดงผล: ไม่มี นั่นคือสิ่งที่ฉันทำลงไป!
Brian

1

ลองใช้line-heightแอตทริบิวต์CSS บนpแท็กของคุณที่มีbrแท็ก โปรดจำไว้ว่าคุณสามารถแท็กidของคุณpหากคุณต้องการแยกมันแม้ว่ามันจะเป็นการดีกว่าถ้าใช้divสำหรับการแยก IMO


1

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


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

ฉันไม่เห็นด้วย. คำถาม OPs เป็นวิธีการปรับความสูงของตัวแบ่งบรรทัด คุณทำไม่ได้ดังนั้นคุณจึงปรับความสูงของเส้นเพื่อให้ได้เอฟเฟกต์ที่ต้องการ
Daniel Siddall

1

ฉันต้องพัฒนาวิธีแก้ปัญหาในการแปลง HTML เป็น PDF และวางแนวข้อความไว้ที่กึ่งกลางของเซลล์ตาราง แต่ไม่มีอะไรทำงานยกเว้นการป้อนข้อความธรรมดา <br>

ดังนั้นเมื่อคิดนอกกรอบฉันได้เปลี่ยนขนาดแนวตั้งโดยปรับขนาดตัวอักษร (เป็น pt)

<font style="font-size: 4pt"><br></font>

0
<span style="line-height:40px;"><br></span> 

คุณต้องทำแบบอินไลน์และในแต่ละ
องค์ประกอบ แต่ควรทำงานบนเบราว์เซอร์ส่วนใหญ่ซอที่มีความสูงบรรทัดเพื่อให้ได้ผลตามที่ต้องการ ถ้าคุณทำให้มันเป็นแบบอินไลน์ในแต่ละองค์ประกอบมันควรจะทำงานกับเบราว์เซอร์และอีเมลส่วนใหญ่ (แต่มันซับซ้อนเกินกว่าที่จะพูดคุยที่นี่)


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

0

นี่เป็นเคล็ดลับสำหรับฉันเมื่อฉันไม่สามารถรับสไตล์ระยะห่างจากแท็ก span:

        <p style='margin-bottom: 5px' >
            <span>I Agree</span>
        </p>
        <span>I Don't Agree</span>


0

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

br {
    content: " ";
    display: block;
}

สำหรับปัญหาเฉพาะฉันกำลังพูดถึงว่าฉันต้องมีช่องว่างเฉพาะระหว่างบรรทัด ฉันเพิ่มระยะขอบไว้ที่ด้านบนและด้านล่าง

br {
    content: " ";
    display: block;
    margin: 0.25em 0;
}

0

ฉันได้มันไปทำงานใน IE7 โดยใช้คำสั่งผสมของโซลูชั่น แต่ส่วนใหญ่ห่อ Br ใน DIV ตามที่ไนเจลและคนอื่น ๆ แนะนำ เพิ่มรหัสและเรียกใช้ที่ = "เซิร์ฟเวอร์" ดังนั้นฉันสามารถลบ BR เมื่อลบช่องทำเครื่องหมายออกจากแถวของช่องทำเครื่องหมาย

.narrow {
    display: block;
    margin: 0px;
    line-height: 0px;
    content: " "; 
}
<div class="narrow" run at="server"><br></br></div>

0

อาจใช้แท็ก br สองแท็กเป็นโซลูชันที่ง่ายที่สุดที่ทำงานกับเบราว์เซอร์ทั้งหมด แต่มันซ้ำ ๆ

<p>
content
</p>
<br /><br />
<p>
content
</p>
<br /><br />
<p>
content
</p>

0

ลองเพิ่มย่อหน้าแทนการแบ่งบรรทัดแบบนี้

bla la la bla bla abla la la bla bla abla ลาลา bla bla a

bla la la bla bla abla la la bla bla abla ลาลา bla bla a

bla la la bla bla abla la la bla bla abla ลาลา bla bla a

จากนั้นคุณสามารถระบุ lineheight หรือ padding หรืออะไรก็ได้สำหรับ p นั้น


ใช่ฉันกำหนดคลาส "ใหญ่" สำหรับทั้ง <br> และ <p> "<br class=big>" เพิ่มช่องว่างระหว่างบรรทัดและ "<p class = big>" เพิ่มช่องว่างหน้าย่อหน้า: ‍‍‍‍‍‍ ‍‍ br.big {display: block; เนื้อหา:""; ขอบด้านบน: 0.5em; line-height: 190%; จัดเรียงแนวตั้ง: ด้านบน;} ‍‍‍‍‍‍ ‍‍ p.big {margin-top: 1.5em} ‍‍‍‍‍‍ ‍‍ แต่ปัญหาเกี่ยวกับแท็ก <p> ก็คือมันมีสไตล์ที่ไม่สอดคล้องกันโดยโปรแกรมอีเมล เมื่อข้อความอีเมลที่มีตัวแบ่งย่อหน้าถูก "อ้างถึง" ในการตอบกลับอีเมลระยะห่างระหว่างย่อหน้ามักจะเปลี่ยนไปอย่างมาก ดังนั้นฉันจึงติดนิสัยการใช้ตัวแบ่งบรรทัดสองเท่า (ctrl-enter ใน gmail) ในอีเมล
Dave Burton
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.