Home Web Front-end HTML Tutorial Css layout series-float float_html/css_WEB-ITnose

Css layout series-float float_html/css_WEB-ITnose

Jun 24, 2016 am 11:49 AM

I am going to talk about a series of layouts from the shallower to the deeper. I will first explain some basic attribute theories, and then try to explain them clearly through examples and theory. Everyone is welcome to discuss, learn and struggle together. Without further ado, let’s go to the official website to see how it explains the definition of float.

Official definition:

The float attribute defines in which direction the element floats. Historically this property has always been applied to images, causing the text to wrap around the image, but in CSS, any element can be floated. A floated element creates a block-level box, regardless of what type of element it is. If non-replaced elements are floated, an explicit width is specified; otherwise, they are made as narrow as possible. If there is very little space for a floating element on a row, the element will jump to the next row, and this process will continue until a row has enough space.

Looking at these definitions, I seem to understand them, but when I actually use them, there are still some things I don’t understand. Now let’s summarize its official definition and summarize its characteristics:

  • Floating mainly changes the arrangement direction of elements and breaks away from the ordinary flow. The value range is left, right, none (not floating);
  • Floating does not occupy the position of the document. If it overlaps with non-floating block-level elements, the floating element will be placed at the top level;
  • If the specified element is floated, the element will have inner-block characteristics and the width will become as narrow as possible. It is recommended to specify a width;
  • After specifying the direction of the floating element, when the float An element will stop floating when it hits the border of the parent element or it will also stop floating when it hits the border of another floating element;
  • If a floating element is specified, subsequent non-floating block-level elements will float immediately. behind the element, and will automatically fill the width of the element;
  • If there is only a very small space for floating elements above a row, then the element will jump to the next row, and this process will continue until a certain row has Until there is enough space (it is too late today to be verified).
  • Supplementary explanation: Ordinary flow (also called standard flow) stipulates that elements are arranged sequentially from left to right and top to bottom.

    Below we will verify it one by one through examples. Of course, it does not rule out that my summary may not be valid in some special circumstances, but I have not thought of it.

    1. This is not a waste of time;
    2. Set div1 to float to the left. You can see that it overlaps with the div2 element, and div1 is at the top level, and it is also verified that it is not occupied. In any space, the effect is the same as setting the element to absolute positioning and z-index, but it is not exactly the same. You can see that the div2 text is not covered. What an unpredictable float!

    3. Remove the height and width of div1, and it will support itself according to the width of your text. If you don’t give the height and width, it can be as narrow as possible. In fact, the effect of setting the element to inner-block and not setting the height and width is the same as being self-supporting. This attribute will be introduced later. In a sense, setting elements to float is the same as inline blocks, except that floating can change the direction of the element.

    4. Set the two elements div1 and div2 to float to the left. According to my summary, if the floating element touches the border of the parent element or touches the border of another floating element, it will stop floating. . div1 touches the border of the parent element container, and div2 stops floating when it touches the border of div1. If there is a problem, it should be that the div2 element is trying to cover the element of div1, but it doesn't, which proves that my conclusion is correct.

    5. Set the div1 element to float to the left. According to my summary, if a floating element is specified, subsequent non-floating block-level elements will follow the floating element and will automatically The width of the padding element. In fact, the width of div2 is 100%, and div1 is floating on top of the div2 element. As mentioned above, floating elements do not occupy any space in the document.

    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

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    AI Hentai Generator

    AI Hentai Generator

    Generate AI Hentai for free.

    Hot Article

    R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
    2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
    Repo: How To Revive Teammates
    1 months ago By 尊渡假赌尊渡假赌尊渡假赌
    Hello Kitty Island Adventure: How To Get Giant Seeds
    4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

    Hot Tools

    Notepad++7.3.1

    Notepad++7.3.1

    Easy-to-use and free code editor

    SublimeText3 Chinese version

    SublimeText3 Chinese version

    Chinese version, very easy to use

    Zend Studio 13.0.1

    Zend Studio 13.0.1

    Powerful PHP integrated development environment

    Dreamweaver CS6

    Dreamweaver CS6

    Visual web development tools

    SublimeText3 Mac version

    SublimeText3 Mac version

    God-level code editing software (SublimeText3)

    Difficulty in updating caching of official account web pages: How to avoid the old cache affecting the user experience after version update? Difficulty in updating caching of official account web pages: How to avoid the old cache affecting the user experience after version update? Mar 04, 2025 pm 12:32 PM

    The official account web page update cache, this thing is simple and simple, and it is complicated enough to drink a pot of it. You worked hard to update the official account article, but the user still opened the old version. Who can bear the taste? In this article, let’s take a look at the twists and turns behind this and how to solve this problem gracefully. After reading it, you can easily deal with various caching problems, allowing your users to always experience the freshest content. Let’s talk about the basics first. To put it bluntly, in order to improve access speed, the browser or server stores some static resources (such as pictures, CSS, JS) or page content. Next time you access it, you can directly retrieve it from the cache without having to download it again, and it is naturally fast. But this thing is also a double-edged sword. The new version is online,

    How do I use HTML5 form validation attributes to validate user input? How do I use HTML5 form validation attributes to validate user input? Mar 17, 2025 pm 12:27 PM

    The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

    How to efficiently add stroke effects to PNG images on web pages? How to efficiently add stroke effects to PNG images on web pages? Mar 04, 2025 pm 02:39 PM

    This article demonstrates efficient PNG border addition to webpages using CSS. It argues that CSS offers superior performance compared to JavaScript or libraries, detailing how to adjust border width, style, and color for subtle or prominent effect

    What are the best practices for cross-browser compatibility in HTML5? What are the best practices for cross-browser compatibility in HTML5? Mar 17, 2025 pm 12:20 PM

    Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

    What is the purpose of the <datalist> element? What is the purpose of the <datalist> element? Mar 21, 2025 pm 12:33 PM

    The article discusses the HTML &lt;datalist&gt; element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

    What is the purpose of the <meter> element? What is the purpose of the <meter> element? Mar 21, 2025 pm 12:35 PM

    The article discusses the HTML &lt;meter&gt; element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates &lt;meter&gt; from &lt;progress&gt; and ex

    How do I use the HTML5 <time> element to represent dates and times semantically? How do I use the HTML5 <time> element to represent dates and times semantically? Mar 12, 2025 pm 04:05 PM

    This article explains the HTML5 &lt;time&gt; element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

    What is the purpose of the <progress> element? What is the purpose of the <progress> element? Mar 21, 2025 pm 12:34 PM

    The article discusses the HTML &lt;progress&gt; element, its purpose, styling, and differences from the &lt;meter&gt; element. The main focus is on using &lt;progress&gt; for task completion and &lt;meter&gt; for stati

    See all articles