Heim Web-Frontend CSS-Tutorial Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

May 16, 2016 pm 12:03 PM
float

1. Das Float-Attribut definiert, in welche Richtung das Element schwimmt. In der Vergangenheit wurde diese Eigenschaft immer auf Bilder angewendet, wodurch der Text um das Bild herum umbrochen wurde. In CSS kann jedoch jedes Element schwebend dargestellt werden. Ein schwebendes Element erstellt eine Box auf Blockebene, unabhängig von der Art des Elements. div ist ein typisches Element auf Blockebene, das allein eine Zeile einnimmt.

Sehen wir uns zunächst an, wie die grundlegendsten Elemente auf Blockebene angeordnet sind. HTML-Code, die folgenden Stile basieren darauf.

Code kopieren Der Code lautet wie folgt:

                                                                                                                                                                                                        
CSS-Code:





Code kopieren


Der Code lautet wie folgt:

.boxBg{

margin: 0 auto;

width:500px;

height:200px; border:2px solid #ccc } .box1{ width:100px; height:50px;Hintergrundfarbe:rot
}
.box2{
width:100px;
height:50px;
background-color:blue
}
.box3{
Breite :100px;
Höhe :50px;
Hintergrundfarbe:grün
}



Ausführungsergebnis:




Da div ein Element auf Blockebene ist, werden die Boxen vertikal angeordnet. Im tatsächlichen Betrieb ist es häufig erforderlich, die Rahmen horizontal anzuordnen. Es gibt zwei Möglichkeiten, dies zu tun. Der erste ist display:inlin-block;



Code kopieren

Der Code lautet wie folgt:Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

.boxBg{

margin: 0 auto;

width:500px;

height:200px; border:2px solid #ccc } .box1{ width:100px; height:50px;Hintergrundfarbe:rot;
Anzeige:inline-block
}
.box2{
width:100px;
height:50px;
background-color:blue;
display :inline-block
}
.box3{
width:100px;
height:50px;
background-color:green;
display:inline-block
}



Ausführungsergebnis:




Der wesentliche Grund für die Lücke in der Mitte ist der Leerraum zwischen den Elementen. Wenn Sie also die Größe von fone-size im übergeordneten Element festlegen, kann die Größe des Leerraums angepasst werden.



Code kopieren

Der Code lautet wie folgt:Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

.boxBg{

margin: 0 auto;

width:500px;

height:200px; border:2px solid #ccc; font-size:34px;}
Nachdem Sie die Schriftgröße auf 34 Pixel eingestellt haben, wird die Lücke größer.

Ausführungsergebnis:




Wenn Sie die Lücke entfernen möchten, müssen Sie ebenfalls die Schriftgröße ändern:0;

Code kopieren

Der Code lautet wie folgt:Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

.boxBg{

margin: 0 auto;

width:500px;

height:200px; border:2px solid #ccc; font-size:0}

Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Auf diese Weise wird das gewünschte Layout erreicht und der Text innerhalb der Box verschwindet. Dies beweist auch, dass die Größe des Textes die Lücke beeinflusst. Setzen Sie es einfach im untergeordneten Element zurück. Natürlich steht das heute nicht im Mittelpunkt. Der gleiche Effekt float:left; kann auch leicht erreicht werden.

Code kopieren Der Code lautet wie folgt:


Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Nach dem Hinzufügen von Float zu einem

-Element wird das Floating-Element sofort angezeigt, nachdem es den Rand des übergeordneten Elements oder eines anderen Floating-Elements erreicht. Wenn beispielsweise im folgenden Beispiel die Gesamtbreite des schwebenden Elements größer als die des übergeordneten Elements ist, wird die Zeile umbrochen. Beim Umbrechen der Zeile wird das vorherige schwebende Element angetroffen und

danach angezeigt.

Code kopieren Der Code lautet wie folgt:


Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Was wird das Ergebnis sein, wenn Inline-Block verwendet wird?

Code kopieren Der Code lautet wie folgt:


Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Zu diesem Zeitpunkt beginnt Feld 3 in einer neuen Zeile, anstatt auf Feld 1 zu folgen (die Lücke zwischen 1 und 2 wird hier nicht besprochen). Dies ist auch eine Beurteilung unter Verwendung von Inline-Block und Float Anders Die Verwendung von Float-Schriftsätzen kann zu anderen Ergebnissen als erwartet führen. Daher ist es hervorragend, Float zu verwenden, wenn Breite und Höhe unverändert bleiben. Wenn es inkonsistent ist, müssen Sie sich das spezifische Layout ansehen und geeignete Attribute verwenden.

Der Code wird unten veröffentlicht, nur der geänderte Teil wird veröffentlicht, der Rest bleibt unverändert und die Struktur bleibt unverändert.

Was wird das Ergebnis sein, wenn der Float: links von Box3 entfernt wird? Nach dem Verständnis belegen schwebende Elemente keinen Platz, d. h. Frame 3 ignoriert Frame 1 und Frame 2 wird direkt neben dem Rand des übergeordneten Elements angezeigt, d. h. Frame 1 deckt Frame 3 ab Ergebnis?

Code kopieren Der Code lautet wie folgt:

.box3{
width:100px ;
height:50px;
background-color:green;
}

Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Warum erscheint der Text in Feld 3 unten, anstatt von Feld 1 abgedeckt zu werden? Dann schauen Sie sich den Code und das Bild an

Code kopieren Der Code lautet wie folgt:

.box3{
height:50px ;
Hintergrundfarbe:grün;
}

Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Sehen Sie den Unterschied? Ja. box3 definiert die Breite nicht; die Breite wird nicht definiert, die Standardbreite ist die Breite des übergeordneten Elements, was bedeutet, dass das schwebende Element zu diesem Zeitpunkt das nicht schwebende Element abdeckt , die Breite von 200 Pixel vor Feld 3 wird vom schwebenden Element abgedeckt. Warum wird der Text nicht abgedeckt und der Text wird um 200 Pixel hinter dem schwebenden Element gequetscht?

Schwebende Elemente belegen nicht den Platz des Blocks, daher hat Box drei 100 % der Breite des übergeordneten Containers von 500 Pixeln, aber schwebende Elemente nehmen einen anderen Platz ein, nämlich den Platz der Zeilenbox Platz, den der Text einnimmt.

Dies ist auch der Grund, warum der Text automatisch um das Bild herum umbrochen wird, nachdem es schwebend ist. Schwebende Elemente belegen keinen Platz auf Blockebene, wirken sich jedoch auf Text und Inline-Elemente innerhalb von Elementen auf Blockebene aus.

Wenn Sie in diesem Fall möchten, dass die drei Felder die gleiche Breite haben, müssen Sie nur die Breite der drei Felder ändern: 300px

Code kopieren Der Code lautet wie folgt:

.box3{
width:300px ;
height:50px;
background-color:green;
}

Ausführungsergebnis:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Nachdem wir nun über das grundlegende Floating gesprochen haben, sprechen wir über die Probleme. Obwohl Floating einfach zu verwenden ist, wird es in der Praxis auch viele Probleme verursachen. Zum Beispiel:



Ausführungsergebnis:




Unter normalen Umständen ein sehr häufiges Problem. Der graue Hintergrund sollte so hoch sein wie der Rahmen, aber die Realität ist immer nicht zufriedenstellend :)

Wir alle wissen, dass der Grund für diese Situation im Schweben liegt. Es wird an vielen Stellen gesagt, dass sich schwebende Elemente vom gewöhnlichen Fluss lösen, daher können gewöhnliche Elemente als schwebende Elemente behandelt werden Existieren nicht, daher gibt es hier nichts dergleichen. Der Hintergrund wird geöffnet, aber Schüler, die sorgfältig lesen, werden sich daran erinnern, dass oben erwähnt wurde, dass sich schwebende Elemente nicht auf Blockfelder, sondern auf Zeilenfelder, also Text oder Inline, auswirken Elemente, unabhängig davon, ob es sich um Elemente auf Blockebene oder um Inline-Elemente handelt. Wenn das schwebende Element vom normalen Fluss abweicht, warum wirkt es sich dann auf die Zeilenbox aus? Tatsächlich glaube ich nicht, dass es nötig ist, sich mit diesen konzeptionellen Dingen zu befassen. Nach meinem Verständnis befinden sich schwebende Elemente nicht im selben horizontalen Raum wie Elemente auf Blockebene, sondern im selben Raum wie Text-Inline-Elemente. Daher entspricht der Rand hier der Platzierung über dem Hintergrund und hat daher keine Auswirkungen auf den Hintergrundelemente. Was normalerweise als Löschen von Floats bezeichnet wird, bedeutet nicht, das Float-Attribut des Floating-Elements zu entfernen, sondern die Floating-Elemente um es herum zu löschen, sodass sich keine Floating-Elemente um es herum befinden Wenn Sie in die zweite Zeile wechseln, können Sie „clear:right;“ nicht in Feld 2 verwenden. Sie müssen „clear:left;

“ in Feld 3 verwenden

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

Code kopieren

Der Code lautet wie folgt:

.box3{ float:left ; width:100px; height:50px;background-color:green;clear:left
}



Ausführungsergebnis:




Ok! Jetzt, da ich das verstanden habe, wollen wir darüber sprechen, wie man den Hintergrund und den Rahmen auf die gleiche Höhe bringt. Der erste Weg: Der direkteste Weg besteht darin, die Hintergrundhöhe direkt auf den Rahmen und den Rahmen einzustellen Natürlich geht es nicht darum, es zu löschen. Schauen wir uns zunächst das Beispiel an:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic TutorialCode kopieren

Der Code lautet wie folgt:






     


   

        < div class="box1">
        框框1
       

       

        框框2
       


        框框3
       

       

   






执行结果:


>所以是跟背景一样,因此背景被撑开了.其实是用清除浮动的原理跟这个是一样的,也是想办法撑开背景;以上去掉clear的宽,高,加上clear属性

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

复制代码

代码如下:

执行结果:



这个可能还看不清楚,给clear框里边加几个字试试看

执行结果:

Detaillierte Analyse des Unterschieds zwischen CSS-Float-Attribut und position:absolute_Basic Tutorial

因为clear用了clear:left综上所述,clear左边不能有浮动元素,所以它必须另起一行显示。如此便看到图上的结果,其实还是用一个元素撑开的背景.当然还有其他方法实现,这里主要是讲清楚浮动就好了:)

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Zwei -Punkte -Museum: Alle Exponate und wo man sie finden kann
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist der maximale Float-Wert? Was ist der maximale Float-Wert? Oct 11, 2023 pm 05:54 PM

Maximaler Wert von Float: 1. In der C-Sprache beträgt der maximale Wert von Float 3,40282347e+38. Gemäß dem IEEE 754-Standard beträgt der maximale Exponent des Float-Typs 127 und die Anzahl der Stellen der Mantisse beträgt 23. Auf diese Weise beträgt die maximale Gleitkommazahl 3,40282347 e+38 2. In der Java-Sprache beträgt der maximale Gleitkommawert 3,4028235E+38; in der Python-Sprache beträgt der maximale Gleitkommawert 1,7976931348623157e+308.

Wie hoch ist die Genauigkeit des Floats? Wie hoch ist die Genauigkeit des Floats? Oct 17, 2023 pm 03:13 PM

Die Genauigkeit von Float kann 6 bis 9 Dezimalstellen erreichen. Gemäß dem IEEE754-Standard beträgt die Anzahl der signifikanten Ziffern, die der Float-Typ darstellen kann, etwa 6 bis 9 Ziffern. Es ist zu beachten, dass dies nur die theoretische maximale Genauigkeit ist. Aufgrund des Rundungsfehlers von Gleitkommazahlen ist die Genauigkeit des Gleitkommatyps häufig geringer. Bei der Ausführung von Gleitkommazahlenoperationen in einem Computer kann es aufgrund der Genauigkeitsbeschränkungen von Gleitkommazahlen zu Präzisionsverlusten kommen. Um die Genauigkeit von Gleitkommazahlen zu verbessern, können Sie Datentypen mit höherer Genauigkeit verwenden, z. B. Double oder Long Double.

Was sind die Float-Längen der Datenbank? Was sind die Float-Längen der Datenbank? Oct 10, 2023 pm 03:57 PM

Übliche Datenbank-Float-Längen sind: 1. Die Float-Typ-Länge in MySQL kann 4 Bytes oder 8 Bytes betragen. 2. Die Float-Typ-Länge in Oracle kann 4 Bytes oder 8 Bytes betragen. 3. Die Länge des Float-Typs in SQL Server ist auf 8 Bytes festgelegt. 4. Die Länge des Float-Typs in PostgreSQL kann 4 Bytes oder 8 Bytes usw. betragen.

Was bedeutet Float in der C-Sprache? Was bedeutet Float in der C-Sprache? Oct 12, 2023 pm 02:30 PM

Float ist in der Sprache C ein Datentyp, der zur Darstellung von Gleitkommazahlen mit einfacher Genauigkeit verwendet wird. Gleitkommazahlen sind reelle Zahlen, die in wissenschaftlicher Notation dargestellt werden und sehr große oder sehr kleine Werte darstellen können. Variablen vom Typ float können Werte mit 6 signifikanten Stellen nach dem Dezimalpunkt speichern. In der Sprache C kann der Typ float zum Betreiben und Speichern von Gleitkommazahlen verwendet werden. Seine Variablen können zur Darstellung von Dezimalzahlen, Brüchen und wissenschaftlicher Notation verwendet werden usw., die genau dargestellt werden müssen. Im Gegensatz zu Ganzzahltypen können Gleitkommazahlen Zahlen nach dem Komma darstellen und vier arithmetische Operationen mit Dezimalzahlen ausführen.

Welche Werte hat das Float-Attribut? Welche Werte hat das Float-Attribut? Oct 10, 2023 pm 02:03 PM

Zu den Float-Attributwerten gehören left, right, none, inherit, clearinline-start und inline-end. Detaillierte Einführung: 1. links, das Element schwebt nach links, das heißt, das Element befindet sich so nah wie möglich an der linken Seite des Containers und andere Elemente umgeben es auf der rechten Seite. 2. rechts, das Element schwebt nach rechts, das heißt, das Element befindet sich so nah wie möglich am Container. Auf der rechten Seite werden andere Elemente es auf der linken Seite umgeben. 3. Der Standardwert ist „Keine“, die Elemente schweben nicht und werden angeordnet entsprechend dem normalen Dokumentenfluss usw.

So konvertieren Sie einen String in einen Float So konvertieren Sie einen String in einen Float Oct 16, 2023 pm 02:03 PM

Kann über Python, JavaScript, Java, C#, Ruby und PHP in Float konvertiert werden. Detaillierte Einführung: 1. Python, geben Sie float_number = float(string_number); ein. 2. JavaScript, geben Sie float_number = parseFloat(string_number); ein.

Was ist der Unterschied zwischen Float und Double? Was ist der Unterschied zwischen Float und Double? Oct 11, 2023 pm 05:38 PM

Die Hauptunterschiede zwischen Float und Double liegen in der Genauigkeit, Speicher- und Berechnungsgeschwindigkeit, Reichweite und Verwendung in Programmiersprachen. Detaillierte Einführung: 1. Die Genauigkeit ist unterschiedlich. Float ist eine Gleitkommazahl mit einfacher Genauigkeit und belegt 4 Bytes (32 Bit), während Double eine Gleitkommazahl mit doppelter Genauigkeit ist und 8 Bytes (64 Bits) belegt Speicher- und Berechnungsgeschwindigkeit sind unterschiedlich. Double nimmt mehr Platz ein und erfordert mehr Speicherplatz zum Speichern von Werten. Bei Anwendungen, die eine hohe Leistung und Geschwindigkeit erfordern, ist es möglicherweise effizienter, den Float-Typ zu verwenden.

Was beinhalten float32-Bytes? Was beinhalten float32-Bytes? Oct 10, 2023 pm 04:07 PM

Das float32-Byte enthält das Vorzeichenbit, das Exponentenbit und das Mantissenbit und wird zur Darstellung von 32-Bit-Gleitkommazahlen verwendet. Detaillierte Einführung: 1. Vorzeichenbit (1 Bit), das zur Darstellung des Vorzeichens einer Zahl verwendet wird, 0 stellt eine positive Zahl dar, 1 stellt eine negative Zahl dar. 2. Exponentenbit (8 Bit), das zur Darstellung des Exponententeils von a verwendet wird Gleitkommazahl, über das Exponentenbit können Sie den Größenbereich der Gleitkommazahl 3 anpassen. Das Mantissenbit (23 Bit) wird verwendet, um den Mantissenteil der Gleitkommazahl darzustellen, und das Mantissenbit speichert der Dezimalteil der Gleitkommazahl. Das Vorzeichenbit bestimmt das Vorzeichen einer Gleitkommazahl, und das Exponentenbit und das Mantissenbit bestimmen gemeinsam die Größe und Genauigkeit der Gleitkommazahl.

See all articles