Ich habe einen großen Textabschnitt, der in Unterabsätze mit <br>
's unterteilt ist:
<p>
Blah blah blah.
<br/>
Blah blah blah. Blah blah blah. Blah blah blah.
<br/>
Blah blah blah.
</p>
Ich möchte die Lücke zwischen diesen Unterabschnitten vergrößern, als gäbe es zwei <br>
oder so etwas. Ich weiß, dass der richtige Weg dazu die Verwendung ist <p></p>
, aber im Moment kann ich dieses Layout nicht ändern, daher suche ich nach einer Nur-CSS-Lösung.
Ich habe versucht Einstellung <br>
‚s line-height
und height
mit display: block
, auch ich gegoogelt und Stack - Überlauf-ed kurz, aber fand keine Lösung finden. Ist das überhaupt möglich, ohne das Layout zu ändern?
<p>
Tags keine<div>
Tags enthalten können, siehe diesen BeitragAntworten:
CSS:
Die Lösung ist wahrscheinlich nicht browserübergreifend kompatibel, aber zumindest etwas. Beachten Sie auch die Einstellung
line-height
:Beachten Sie für Google Chrome die folgenden Einstellungen
content
:Abgesehen davon denke ich, dass Sie mit einer JavaScript-Lösung nicht weiterkommen.
quelle
margin-top: 10px;
content:" "
diesem Stil ein Attribut hinzu und es funktioniert gut in Chromeline-height
. Am Ende ist es so etwas wiebr { display:block; margin-top:10px; line-height:22px; }
.margin:10px 0 0
für diejenigen, die nicht wollen, dass es doppelt so groß ist.margin-top: 10px;
, habe immer noch nicht funktioniert ...Hier ist die richtige Lösung, die tatsächlich browserübergreifende Unterstützung bietet:
quelle
Die obigen Blicke haben also im Grunde eine ähnliche Antwort, aber hier ist es sehr prägnant. Funktioniert in Opera, Chrome, Safari und Firefox, höchstwahrscheinlich auch im Internet Explorer?
quelle
Eine andere Möglichkeit ist die Verwendung einer Personalabteilung . Aber, und hier ist der listige Teil, machen Sie es unsichtbar.
So:
Um eine sauberere BR-Pause mit der HR zu simulieren: Btw funktioniert in allen Browsern !!
quelle
<p></p>
mit Rändern zu verwenden, als ein<hr />
Soweit ich weiß
<br>
nicht , haben eine Höhe, zwingt sie lediglich einen Zeilenumbruch. Was Sie haben, ist ein Text mit einigen Zeilenumbrüchen zusätzlich zu den Zeilenumbrüchen, keine Unterabsätze. Sie können den Zeilenabstand ändern, dies wirkt sich jedoch auf alle Zeilen aus.quelle
content
Eigenschaft reicht aus.Ich hatte gerade dieses Problem und habe es mithilfe von umgangen
quelle
Sie können die Zeilenhöhe auf dieses
<p>
Element anwenden , damit die Linien größer werden.quelle
<br>
Ich habe das nicht ausprobiert
:before
:after
Pseudoelement / CSS2 , hauptsächlich, weil es nur in IE8 unterstützt wird (dies betrifft IE-Browser) . Dies könnte die einzig mögliche CSS-Lösung sein:Hier ist ein Beispiel für QuirksMode .
quelle
Ich hatte einen Gedanken, den Sie vielleicht verwenden könnten:
Aber das funktionierte nicht auf Chrom oder Firefox.
Ich dachte nur, ich würde das erwähnen, falls es jemand anderem einfällt, und ich würde ihnen den Ärger ersparen.
quelle
Funktioniert in Firefox, Chrome und Safari. Wurde nicht im Explorer getestet. (Windows-Tablet ist stromlos.)
Zeilenumbrüche und Schriftgrößen funktionieren in Firefox & Safari anders.
quelle
Interessanterweise, wenn das break-Tag wie folgt in voller Form geschrieben ist:
dann funktioniert die CSS-Zeilenhöhe: 145%. Wenn das break-Tag wie folgt geschrieben ist:
dann funktioniert es nicht, zumindest in Chrome, IE und Firefox. Seltsam!
quelle
Was für mich funktioniert, ist das Hinzufügen dieser Inline zwischen Absatz-Tags ... allerdings nicht die beste Lösung.
-------- Bearbeiten ---------
Ich bin damit auf Probleme mit PC / Mac gestoßen ... Es gibt dem Text die neue Zeilenhöhe, macht aber keinen Zeilenumbruch ... Möglicherweise möchten Sie einige Tests selbst durchführen. Es tut uns leid!
quelle
Und denken Sie daran, dass die (falsche) Verwendung des
<hr>
Tags, wie irgendwo vorgeschlagen, das<p>
Tag beendet. Vergessen Sie also diese Lösung.Wenn f.ex. Etwas ist auf die Umgebung gestylt
<p>
, dieser Stil ist für den Rest des Inhalts verschwunden, nachdem das<hr>
eingefügt wurde.quelle
Hier ist eine Lösung, die in IE, Firefox und Chrome funktioniert. Die Idee ist, die Schriftgröße des br-Elements von der Körpergröße von 14 Pixel auf 18 Pixel zu erhöhen und das Element um 4 Pixel zu verringern, sodass die zusätzliche Größe unter der Textzeile liegt. Das Ergebnis ist 4px zusätzliches Leerzeichen unter dem br.
quelle
vertical-align
scheint den Trick mit dembr
Tag zu tun . Ich habe dies auf IE 11 getestet.AKTUALISIERT am 13. September 2019:
Ich
<br class=big>
mache einen übergroßen Zeilenumbruch, wenn ich einen brauche. Bis heute habe ich es so gestylt:(Das
vertical-align:top
wurde nur für IE und Edge benötigt.)Das funktionierte in allen gängigen Browsern, die ich ausprobiert habe: Chrome, Firefox, Opera, Brave, PaleMoon, Edge und IE11.
Vor kurzem funktionierte es jedoch nicht mehr in Chrome-basierten Browsern : Meine "großen" Zeilenumbrüche wurden zu Zeilenumbrüchen normaler Größe.
(Ich weiß nicht genau, wann sie es kaputt gemacht haben. Ab dem 12. September 2019 funktioniert es immer noch in meinem veralteten Chromium Portable 55.0.2883.11, aber es ist in Opera 63.0.3368.71 und Chrome 76.0.3809.132 (beide Windows) kaputt und Android).)
Nach einigem Ausprobieren habe ich den folgenden Ersatz gefunden, der in den aktuellen Versionen all dieser Browser funktioniert:
Anmerkungen:
line-height:190%
funktioniert in allen außer den neuesten Versionen von Chrome-basierten Browsern.vertical-align:top
wird für IE und Edge (in Kombination mitline-height:190%
) benötigt, um den zusätzlichen Speicherplatz nach der vorhergehenden Zeile zu erhalten, in die er gehört, und nicht teilweise vor und teilweise nach.display:block;content:"";margin-top:0.5em
funktioniert in Chrome, Opera & Firefox, aber nicht in Edge & IE.Eine alternative (einfachere) Möglichkeit, nach einem
<br>
Tag etwas zusätzlichen vertikalen Speicherplatz hinzuzufügen , wenn Sie nichts dagegen haben, den HTML-Code zu bearbeiten, ist so etwas. Es funktioniert gut in allen Browsern:(Sie können die "-37%" natürlich nach Bedarf anpassen, um eine größere oder kleinere Lücke zu schließen.) Hier ist eine Demoseite, die einige andere Variationen des Themas enthält:
https://burtonsys.com/a_little_extra_vertical_space_for_br_tag.html
28. Mai 2020:
Ich habe die Demoseite aktualisiert. Es werden nun alle oben genannten Techniken demonstriert:
https://burtonsys.com/a_little_extra_vertical_space_for_br_tag.html
quelle
Michael und Yoda haben beide recht. Sie können das
<p>
Tag verwenden, das als Block-Tag einen unteren Rand verwendet, um den folgenden Block zu versetzen. Sie können also etwas Ähnliches tun, um einen größeren Abstand zu erhalten:Eine andere Alternative ist die Verwendung des Block-
<hr>
Tags, mit dem Sie die Höhe des Abstands explizit definieren können.quelle
<br />
nimmt so viel Platz ein wie eine mit Text gefüllte Zeile von Ihnen<p>
, das können Sie nicht ändern. Wenn Sie größer sein möchten, bedeutet dies, dass Sie in Absätze trennen möchten. Fügen Sie also weitere hinzu<p>
. Vergiss nicht, so semantisch wie möglich zu sein;)quelle
Sie können auch die Eigenschaft "Block-Quote" in CSS verwenden. Dies würde dazu führen, dass Ihre einzelnen Zeilen nicht beeinträchtigt werden. Sie können jedoch Parameter nur für die Unterbrechungen zwischen Absätzen oder "Blockzitaten" festlegen.
UPDATE:
Ich stehe korrigiert. "blockquote" ist eigentlich eine HTML-Eigenschaft. Sie verwenden es genau wie <p> und </ p> für Ihre Arbeit. Sie können dann die Parameter für Ihr Blockzitat in CSS wie einstellen
Hoffe das hilft. Es ähnelt dem Einstellen der Parameter auf dem br und ist möglicherweise browserübergreifend kompatibel.
quelle
Sie scheinen nicht in der Lage zu sein, die Höhe eines BR anzupassen, aber Sie können ihn mithilfe der Anzeige zuverlässig verschwinden lassen: keine
Kam über diese Seite, als ich nach einer Lösung für Folgendes suchte:
Ich habe eine Situation, in der das Zahlungsgateway eines Drittanbieters (Worldpay) nur die Zahlungsseiten mit maximal 10.000 CSS und HTML (kein Skript zulässig) anpassen kann, die in den Hauptteil der Vorlage eingefügt werden, und nach einigen BRs, FONT-Tags usw. In Verbindung mit der DTD, die den IE7 / 8 in den Quirks-Modus versetzt, ist die browserübergreifende Anpassung so schwierig wie möglich!
Durch das Ausschalten von BRs werden die Dinge viel konsistenter ...
quelle
Ich benutze diese Methoden, aber ich weiß nicht, ob Cross-Browser
================= Methode 1 ==================
ODER
================= Methode 2 ==================
ODER
================= Methode 3 ==================
quelle
Versuchen Sie, das CSS-
line-height
Attribut für Ihrp
Tag zu verwenden, das dasbr
Tag enthält . Denken Sie daran, dass Sieid
Ihrep
Tags verwenden können, wenn Sie sie isolieren möchten. Es ist jedoch möglicherweise besserdiv
, IMO zur Isolierung zu verwenden.quelle
Es tut uns leid, wenn jemand anderes dies bereits gesagt hat, aber die einfache Lösung besteht darin, mit Ihrer "Linienhöhe" herumzuspielen. Wenn Sie bei der Verwendung eines Zeilenumbruchs zu viel Platz erhalten, liegt dies einfach daran, dass Sie die Zeilenhöhe zu hoch eingestellt haben. Sie können dies in CSS korrigieren (aber wissen, dass es sich auf alles auswirkt, was diese Eigenschaft verwendet), oder Sie können einen Inline-Stil ausführen, um das CSS zu überschreiben.
quelle
Ich musste eine Lösung entwickeln, um HTML in PDF zu konvertieren und den Text vertikal in Tabellenzellen zu zentrieren, aber nichts funktionierte außer der Eingabe der Ebene
<br>
Wenn ich über den Tellerrand hinaus denke, habe ich die vertikale Größe durch Anpassen der Schriftgröße (in pt) geändert.
quelle
Sie
müssten dies inline und für jedes Element tun, aber es sollte bei den meisten Browsern funktionieren. Spielen Sie mit der Zeilenhöhe, um den gewünschten Effekt zu erzielen. Wenn Sie es für jedes Element inline machen, sollte es in den meisten Browsern und E-Mails funktionieren (dies ist jedoch zu komplex, um hier diskutiert zu werden).
quelle
Dies war der Trick für mich, als ich den Stilabstand vom span-Tag nicht zum Laufen bringen konnte:
quelle
Verwenden
<div>
Dies ermöglicht eine neue Linie ohne vertikalen Abstand.
Das wird
quelle
Eine allgemeinere Antwort für alle, die hier gelandet sind, da sie Probleme mit dem Abstand beheben, die durch das
<br>
Tag verursacht werden . Ich muss viele Resets durchführen, um nahezu pixelgenau zu sein.Für das spezifische Problem, das ich ansprach, musste ich einen bestimmten Abstand zwischen den Zeilen haben. Ich habe oben und unten einen Rand hinzugefügt.
quelle
Ich habe es in IE7 zum Laufen gebracht, indem ich eine Kombination von Lösungen verwendet habe, aber hauptsächlich das Br in DIV verpackt habe, wie Nigel und andere vorgeschlagen haben. ID hinzugefügt und bei = "Server" ausgeführt, damit ich den BR entfernen kann, wenn das Kontrollkästchen aus der Reihe der Kontrollkästchen entfernt wird.
quelle
Möglicherweise ist die Verwendung von zwei br-Tags die einfachste Lösung, die mit allen Browsern funktioniert. Aber es wiederholt sich.
quelle
Wie wäre es, wenn Sie einfach einen Absatz anstelle des Zeilenumbruchs hinzufügen?
bla la la bla bla abla la la bla bla abla la bla bla a
bla la la bla bla abla la la bla bla abla la bla bla a bla la la bla bla abla la la bla bla abla la bla bla aDann können Sie die Linienhöhe oder die Auffüllung oder was auch immer für dieses p angeben
quelle