


How to use CSS to implement layouts for fixed headers and footers and scrollable content areas in mobile pages?
Mobile page: CSS layout solution for fixed head, bottom and scrollable content area
In mobile development, common requirements are: the head and bottom of the page are fixed, and the middle content area can be scrolled up and down. This article will introduce several CSS layout methods to achieve this effect. Suppose the HTML structure contains three parts: header ( .head
), content area ( .content
) and footer ( .foot
).
Solution
1. position: fixed;
fixed positioning method
This method uses fixed positioning to fix the head and bottom, and the content area can be scrolled.
html, body { height: 100%; margin: 0; padding: 0; } body { display: flex; flex-direction: column; } .head { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; /* Make sure the head is above the content*/ background-color: #f8f8f8; padding: 10px; } .content { flex: 1; /* occupy the remaining space*/ overflow-y: auto; padding-top: 50px; /* Consider head height*/ padding-bottom: 50px; /* Consider bottom height*/ } .foot { position: fixed; bottom: 0; left: 0; right: 0; z-index: 1000; /* Make sure the bottom is above the content*/ background-color: #f8f8f8; padding: 10px; }
.head
and .foot
use position: fixed;
fixed, z-index
ensures that it is above the content. .content
uses flex: 1;
to occupy the remaining space, overflow-y: auto;
to achieve scrolling. padding-top
and padding-bottom
avoid content being obscured by the head and bottom.
2. Flexbox elastic box layout method
Flexbox can also easily implement this layout.
html, body { height: 100%; margin: 0; padding: 0; } body { display: flex; flex-direction: column; } .head { flex-shrink: 0; /* Prevent head shrinkage*/ height: 50px; /* Fixed head height*/ background-color: #f8f8f8; padding: 10px; } .content { flex: 1; /* occupy the remaining space*/ overflow-y: auto; background-color: #ffffff; } .foot { flex-shrink: 0; /* Prevent bottom shrinkage*/ height: 50px; /* Fixed bottom height*/ background-color: #f8f8f8; padding: 10px; }
Use flex-shrink: 0;
to prevent it from shrinking, height
property sets a fixed height. .content
uses flex: 1;
to occupy the remaining space and set scrolling.
3. Grid grid layout method
Grid layouts also apply.
html, body { height: 100%; margin: 0; padding: 0; } body { display: grid; grid-template-rows: 50px 1fr 50px; /* Define the head, content area, bottom height*/ } .head { background-color: #f8f8f8; padding: 10px; } .content { overflow-y: auto; background-color: #ffffff; } .foot { background-color: #f8f8f8; padding: 10px; }
grid-template-rows
directly defines the row heights of the head, content area and bottom, and 1fr
means that the content area occupies the remaining space. .content
settings scroll.
All the above three methods can achieve the goal layout, and which method to choose depends on personal preferences and project needs. Remember to adjust the height and style of the head and bottom according to the actual situation.
The above is the detailed content of How to use CSS to implement layouts for fixed headers and footers and scrollable content areas in mobile pages?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



How to use the Bootstrap button? Introduce Bootstrap CSS to create button elements and add Bootstrap button class to add button text

To adjust the size of elements in Bootstrap, you can use the dimension class, which includes: adjusting width: .col-, .w-, .mw-adjust height: .h-, .min-h-, .max-h-

To set up the Bootstrap framework, you need to follow these steps: 1. Reference the Bootstrap file via CDN; 2. Download and host the file on your own server; 3. Include the Bootstrap file in HTML; 4. Compile Sass/Less as needed; 5. Import a custom file (optional). Once setup is complete, you can use Bootstrap's grid systems, components, and styles to create responsive websites and applications.

There are several ways to insert images in Bootstrap: insert images directly, using the HTML img tag. With the Bootstrap image component, you can provide responsive images and more styles. Set the image size, use the img-fluid class to make the image adaptable. Set the border, using the img-bordered class. Set the rounded corners and use the img-rounded class. Set the shadow, use the shadow class. Resize and position the image, using CSS style. Using the background image, use the background-image CSS property.

Answer: You can use the date picker component of Bootstrap to view dates in the page. Steps: Introduce the Bootstrap framework. Create a date selector input box in HTML. Bootstrap will automatically add styles to the selector. Use JavaScript to get the selected date.

To verify dates in Bootstrap, follow these steps: Introduce the required scripts and styles; initialize the date selector component; set the data-bv-date attribute to enable verification; configure verification rules (such as date formats, error messages, etc.); integrate the Bootstrap verification framework and automatically verify date input when form is submitted.

There are two ways to create a Bootstrap split line: using the tag, which creates a horizontal split line. Use the CSS border property to create custom style split lines.

Bootstrap provides a simple guide to setting up navigation bars: Introducing the Bootstrap library to create navigation bar containers Add brand identity Create navigation links Add other elements (optional) Adjust styles (optional)
