Home >Web Front-end >HTML Tutorial >Summary of CSS methods to achieve vertical centering of divs in page layout_html/css_WEB-ITnose
In the previous article, I briefly summarized a "CSS method to achieve horizontal centering of divs in page layout". In fact, horizontal centering is relatively simple, but vertical centering is a bit troublesome because we design the page. Often the horizontal width is fixed. Therefore, it is necessary for us to summarize the methods to achieve vertical centering during page layout.
When talking about this issue, some people may ask, isn’t there a vertical-align attribute in CSS to set vertical centering? Even if some browsers don't support it, I only need to do a little CSS Hack technology! So I have to say a few words here. There is indeed a vertical-align attribute in CSS, but it only takes effect on elements with valign attributes in (X)HTML elements, such as
1. Single-line vertical centering
If there is only one line of text in a container, it is relatively simple to center it. We only need to set its actual height to be equal to the line-height of the line it is in. . For example:
view plain copy to clipboard print ?
div { height:25px; line-height:25px; overflow:hidden; }div { height:25px; line-height:25px; overflow:hidden; }
This code is very simple. The overflow:hidden setting is used later to prevent the content from exceeding the container or causing automatic line wrapping, so that the vertical centering effect cannot be achieved.
Click here to see the running effect
However, in Internet Explorer 6 and below, this method does not support vertical centering of images.
2. Vertical centering of multi-line text of unknown height
If the height of a piece of content is variable, then we can use the last line used to implement horizontal centering mentioned in the previous section. The first method is to set the Padding so that the upper and lower padding values are the same. Again, this is a way of "looking" vertical centering, it's just a way of making the text completely fill the
view plain copy to clipboard print ?
div { padding:25px; }div { padding:25px; }
This The advantage of this method is that it can run on any browser and the code is very simple. However, the prerequisite for the application of this method is that the height of the container must be scalable.
Click here to see the running effect
3. Centering multi-line text with a fixed height
At the beginning of this article, we have said that the vertical-align attribute in CSS will only work with valign features The (X)HTML tag works, but there is also a display attribute in CSS that can simulate