Home > Web Front-end > HTML Tutorial > Absolute positioning of CSS_html/css_WEB-ITnose

Absolute positioning of CSS_html/css_WEB-ITnose

WBOY
Release: 2016-06-24 12:31:12
Original
1279 people have browsed it

Absolute positioning of CSS:
1. Basic concept:
If relative positioning does not break away from the document flow and offset relative to the object itself is a bit confusing, then absolute positioning is definitely It cuts the knot quickly, because absolute positioning can make an object break away from the normal document flow, as if it is floating above the normal document flow, and position it relative to the element containing the object. Of course, this positioning relative to the element also varies in different situations. different.
2. How to set an element to absolute positioning:
Add the following attributes to the object to set the object to absolute positioning:

position:absolute; 或者 position:fixed
Copy after login

3. Positioning reference object:
You can use the top attribute and left attribute to set the offset of the absolutely positioned object.
Although absolute positioning is separated from the document flow, it also requires a reference object for positioning, but the reference object is different in different situations.
1. If the top or left attribute value is not set, then the positioning reference object of the corresponding orientation is the first-level parent element of this object. The code example is as follows:

<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>CSS的绝对定位-蚂蚁部落</title>  <style type="text/css"> body { margin:20px; } #grandfather { width:330px; height:300px; background-color:#F90; } #father { width:200px; height:200px; background-color:green; margin-left:50px; } #children { width:100px; height:100px; background-color:red; float:right; } #inner { width:50px; height:50px; background-color:blue; position:absolute; top:10px; } </style> </head> <body> <div id="grandfather"> <div id="father">   <div id="children">    <div id="inner"></div>   </div> </div> </div> </body> </html>
Copy after login
Copy after login

In the above code, since the inner element uses absolute positioning and the left attribute value is not set, the positioning reference object in the horizontal direction is the first-level parent element children of the inner element. Of course, if the top attribute value is not set, the vertical positioning reference object is also children.
2. If the left or top attribute value is set:
1). If the ancestor element uses positioning, then the positioning reference object of the corresponding direction of this object is this ancestor element. If the ancestor element does not use positioning, Positioned, then the positioning reference object in the corresponding direction is the browser client area. The code example is as follows:
Example 1:

<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>CSS的绝对定位-蚂蚁部落</title>  <style type="text/css"> body { margin:20px; } #grandfather { width:330px; height:300px; background-color:#F90; } #father { width:200px; height:200px; background-color:green; margin-left:50px; position:relative; } #children { width:100px; height:100px; background-color:red; float:right; } #inner { width:50px; height:50px; background-color:blue; position:absolute; left:10px; top:10px; } </style> </head> <body> <div id="grandfather"> <div id="father">   <div id="children">    <div id="inner"></div>   </div> </div> </div> </body> </html>
Copy after login

The above code, the inner element uses absolute Positioning, and its ancestor element father adopts relative positioning, then its positioning reference object is father.
Example 2:

<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>CSS的绝对定位-蚂蚁部落</title>  <style type="text/css"> body { margin:20px; } #grandfather { width:330px; height:300px; background-color:#F90; } #father { width:200px; height:200px; background-color:green; margin-left:50px; } #children { width:100px; height:100px; background-color:red; float:right; } #inner { width:50px; height:50px; background-color:blue; position:absolute; top:10px; } </style> </head> <body> <div id="grandfather"> <div id="father">   <div id="children">    <div id="inner"></div>   </div> </div> </div> </body> </html>
Copy after login
Copy after login

In the above code, the inner element uses absolute positioning, and its ancestor elements do not use Positioned, then the vertical positioning reference object is the window. Since the left attribute value is not set, the horizontal positioning reference object is its first-level parent element children.
4. Absolutely positioned elements break away from the document flow:
As mentioned at the beginning, absolute positioning can make an element break away from the document flow, then elements in the surrounding document flow can occupy the space when this element does not break away from the document flow. Location.
The code example is as follows:

<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>CSS的绝对定位-蚂蚁部落</title>  <style type="text/css"> div { text-align:center; line-height:100px; } .father { width:400px; height:400px; background-color:green; margin:50px; } .first { width:100px; height:100px; background-color:red; position:absolute; } .second { width:120px; height:120px; background-color:blue; } </style> </head> <body> <div class="father"> <div class="first">first</div> <div class="second">second</div> </div> </body> </html>
Copy after login

In the above code, since the first element is out of the document flow, the second element can Occupy the position that the original first element should have occupied.
Special note: Positioned elements are often used together with the z-index attribute. For details, please refer to the detailed usage of the z-index attribute in CSS

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template