Heim > Web-Frontend > CSS-Tutorial > CSS-Positionierung und Float-Floating

CSS-Positionierung und Float-Floating

高洛峰
Freigeben: 2017-02-27 09:12:52
Original
2175 Leute haben es durchsucht

1. Positionspositionierung

(1): Positionsattribute

1.absolut: Erzeugen Sie absolut positionierte Elemente, die relativ zum übergeordneten Element positioniert sind, dessen Positionierung auf der letzten Ebene nicht statisch ist.

2. relativ: Erzeugen Sie relativ positionierte Elemente, die relativ zur normalen Dokumentflussposition positioniert sind, an der sie sich befinden

3.statisch: Standardwert, keine Positionierung, das Element erscheint im normalen Dokumentfluss;

4.fixiert: Wird vom alten IE nicht unterstützt, konsistent mit absolut, relativ zum Fenster positioniert. Wenn das Die Bildlaufleiste wird beim Scrollen nicht angezeigt.

5.sticky: (CSS3) weist Kompatibilitätsprobleme auf. Wenn es auf dem Bildschirm angezeigt wird, wird es entsprechend gesetzt Der reguläre Ablauf verhält sich beim Verlassen des Bildschirms wie behoben. Die Leistung dieses Attributs ist der Adsorptionseffekt, den Sie in der Realität sehen.

(2): Bezüglich der Probleme, die im Allgemeinen durch die Verwendung von Position verursacht werden

1. Wenn es ein p mit einer Standardbreite von 100 gibt %, sobald es hinzugefügt wird. Bei Verwendung der absoluten Positionierung wird das Element sofort inline blockiert und die Standardbreite wird an die interne Breite des Elements angepasst, wodurch die Breite und Höhe der Seite reduziert wird.

2. Aufgrund der Flexibilität der absoluten Positionierung ist es bei normalen Seitenlayouts manchmal leicht, den absoluten/relativen/oben/links/z-Index zu missbrauchen, um Probleme zu sparen, was später zu einer Erweiterung führt und Wartung verursachen Probleme

(3): Positionscode-Beispiel

1.relative relative Positionierung.

CSS-Positionierung und Float-Floating

Objekt 2 bewegt sich relativ zur ursprünglichen Position seines eigenen Dokumentenflusses und belegt weiterhin den Dokumentenfluss In der unteren Anordnung ändert sich relativ nur die visuelle Position.

<style>
body{color: #fff;}
.aa{width: 400px;margin: 0 auto;border: 2px solid #000;height: 400px}
#position1 {height: 100px;background: green;}
#position2 {height: 100px;background: blue;position: relative;top: 10px;left: 50px;}
#position3{height: 100px;background: yellow;color: #000}
</style>
<body>
<p class="aa">
    <p id="position1">对象1</p>
    <p id="position2">对象2</p>
    <p id="position3">对象3</p>
</p>
</body>
Nach dem Login kopieren

2.absolute absolute Positionierung

CSS-Positionierung und Float-Floating

Das absolute Attribut von Objekt 1 ist relativ zum übergeordneten P versetzt, vom Dokumentfluss getrennt und in Breite und Höhe über dem Dokumentfluss zusammengebrochen.

<style>
body{color: #fff;}
.aa{width: 400px;margin: 0 auto;border: 2px solid #000;height: 400px;position: relative;}
#position1 {height: 100px;background: green;position: absolute;top: 10px;left:50px; }
#position2 {height: 100px;background: blue;}
#position3{height: 100px;background: yellow;color: #000}
</style>
</head>
<body>
<p class="aa">
    <p id="position1">对象1</p>
    <p id="position2">对象2</p>
    <p id="position3">对象3</p>
</p>
Nach dem Login kopieren

2. Float

(1) Definition von Float

Das Float-Attribut definiert, ob das Element in der Links-/Rechtsrichtung schwebt. Ein schwebendes Element erstellt eine Box auf Blockebene, unabhängig von der Art des Elements.

Wert von float: links/rechts/keine

(2) float implementiert den Textumbruch

mit dem Floating-Attribut The Element kann das Element auch zum Inline-Block machen, der über Wrapping-Eigenschaften verfügt, sodass das Element die Vorteile von Blockelementen und Inline-Elementen kombiniert. Elemente mit schwebenden Attributen werden aus dem Standardfluss heraus angeordnet. Die schwebenden Elemente schweben nach dem Ausbrechen aus dem Standardfluss über den normalen Blockelementen, belegen aber weiterhin den Textraum des normalen Dokumentflusses, sodass der nachfolgende Text Platz einnimmt Der Raum außer den schwebenden Elementen dient als Grundlage für die Anordnung und bildet den Textumbrucheffekt.

CSS-Positionierung und Float-Floating

<style>
.a{width: 200px;height: 400px;margin: 0 auto;border: 1px solid #000;}
.pic{float: left;}
p{font-size: 16px;line-height: 18px;font-family: "Microsoft Yahei"}
</style>
</head>
<body>
<p class="a">
    <img  src="2.jpg"    style="max-width:90%" width="100" class="pic" alt="CSS-Positionierung und Float-Floating" >
    <p>这是一段测试文字啦啦啦啦啦这是一段测试文字啊啊啊啊啊这是一段文字显示呐呐呐呐这是一段文字显示啦啦啦啦啦</p>
</p>
Nach dem Login kopieren

(3) Float-Floating-Layout

CSS-Positionierung und Float-Floating

Der Standard-Dokumentenfluss ist von oben nach unten angeordnet.

CSS-Positionierung und Float-Floating

Nachdem p1 nach links schwebt, ist es offensichtlich, dass die Höhe zusammenbricht und p2 und p3 sich mit p1 überlappen.

(4) Warum Floats gelöscht werden sollten und verschiedene Methoden zum Löschen von Floats

Aufgrund der Nebenwirkungen des Floats, die dazu führen, dass die Elementhöhe zusammenbricht , das übergeordnete Feld Der Rand kann nicht gestreckt werden, der Hintergrund kann nicht angezeigt werden und die Rand- und Abstandseinstellungen zwischen übergeordneter und untergeordneter Ebene können nicht korrekt angezeigt werden.

CSS-Positionierung und Float-Floating

<style>
.p1{width: 400px;border: 2px solid #000;}
.p2{width: 100px;height: 100px;background: blue;float: left;}
.p3{width: 100px;height: 100px;background: green;float: right;}
</style>
</head>
<body>
<p class="p1">
    <p class="p2">p2</p>
    <p class="p3">p3</p>
</p>
Nach dem Login kopieren

Methode 1: Fügen Sie vor dem Ende des übergeordneten Tags ein untergeordnetes Tag hinzu< ; p style="clear:both;">

<p class="p1">
    <p class="p2">p2</p>
    <p class="p3">p3</p>
    <p style="clear:both;"></p>
</p>
Nach dem Login kopieren

方法2:在父级css属性加上入overflow:hidden;zoom:1;或者overflow:auto;zoom:1;

方法3:在父级用zoom+:after方法,原理类似于clear:both,利用CSS方式:after在元素内部加一个clear:both的元素块

.box1{zoom:1;}
.box1:after{display:block; content:&#39;clear&#39;; clear:both; line-height:0; visibility:hidden;}
Nach dem Login kopieren

方法4:对父级设置合适的高度直接撑开

(五)float和JavaScript 

IE浏览器:

obj.style.styleFloat = "left";
Nach dem Login kopieren

其他浏览器:

obj.style.cssFloat = "left";
Nach dem Login kopieren

更多CSS-Positionierung und Float-Floating相关文章请关注PHP中文网!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage