Table of Contents
(2) Use padding to occupy the space" > (2) Use padding to occupy the space
(3) Parent: display:flex; left fixed width; right flex: 1. ok" >(3) Parent: display:flex; left fixed width; right flex: 1. ok
Home Web Front-end CSS Tutorial CSS layout is centered and aligned, with fixed width on the left and adaptive on the right.

CSS layout is centered and aligned, with fixed width on the left and adaptive on the right.

Mar 31, 2017 am 10:34 AM
css layout

    CSS页面布局是web前端开发的最基本的技能,本文将介绍一些常见的布局方法,涉及到盒子布局,column布局,flex布局等内容。本文中,你可以看到一些水平垂直居中的方法,左侧固定宽度,右侧自适应的一些方法。如果你有更多关于布局方面的技巧,欢迎留言交流。一、神奇的居中    经常看到有一些面试题问如何实现水平垂直居中,还要求用多种方法。唉唉唉!下面介绍一下我所知道的实现居中的方法。(1)父元素relative;子元素absolute,top:50%;left:50%;margin-left:-自己宽度的一半;margin-right:-自己高度的一半。
Copy after login
nbsp;html>


    <meta>
    <title>水平垂直居中2</title>
    <style>
        .container{
            width: 100%;
            height: 500px;
            background: red;
            position: relative;
        }
        .child{
            width: 300px;
            height: 300px;
            background: blue;
            position: absolute;
            left: 50%;
            margin-left: -150px;
            top: 50%;
            margin-top: -150px;
        }
    </style>


    <div>
        <div></div>
    </div>

Copy after login

This method requires knowing the width and height of the child elements.

(2)父元素:relative;子元素:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
Copy after login
nbsp;html>


    <meta>
    <title>水平垂直居中3</title>
    <style>
        .container{
            background: red;
            width: 100%;
            height: 500px;
            position: relative;
        }
        .child{
            background: blue;
            width: 300px;
            height: 300px;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%,-50%);
        }
    </style>


    <div>
        <div></div>
    </div>

Copy after login
<span style="font-size: 14px; font-family: Microsoft YaHei">此法跟上面的相似,但是用到了transform,好处是不需要知道子元素的宽高,兼容性方面我查了一下,看着办吧。<br><img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/013/e6f851faee59ab9abba51c883c21e708-0.png" class="lazy" alt="CSS layout is centered and aligned, with fixed width on the left and adaptive on the right."    style="max-width:90%"  style="max-width:90%" title="CSS layout is centered and aligned, with fixed width on the left and adaptive on the right."><br><strong>(3)父元素:<a href="http://www.php.cn/wiki/927.html" target="_blank">display</a>: flex;justify-content: center;align-items: center;</strong></span>
Copy after login
nbsp;html>


    <meta>
    <title>水平垂直居中1</title>
    <style>
        .container{
            width: 100%;
            height: 400px;
            background: red;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .child{
            width: 300px;
            height: 300px;
            background: blue;
        }
    </style>


    <div>
        <div></div>
    </div>

Copy after login

This method seems a bit high-end, and you don’t need to pay attention to the child elements at all.

(4)水平居中的方法,父元素:text-align:center
Copy after login
nbsp;html>


    <meta>
    <title>水平垂直居中4</title>
    <style>
        .container{
            background: red;
            width: 100%;
            height: 500px;
            text-align: center;
        }
        .child{
            background: blue;
            width: 300px;
            height: 300px;
            margin: auto;
        }
    </style>


    <div>
        <div></div>
    </div>

Copy after login
<span style="font-size: 14px; font-family: Microsoft YaHei">如果子元素里的文字不要水平居中的话,那么用此法将遇到不少麻烦。<strong>(5)水平居中方法,子元素:margin:0 auto;这个好说,不上代码了</strong>好了,关于居中问题就说这么多,如果你还有更好的方法,请告诉我。<br><strong>二、左侧固定宽度,右侧自适应</strong>这是一个比较常见的需求,下面介绍几种实现方法。
(1)左边定宽,左<a href="http://www.php.cn/code/11748.html" target="_blank">浮动</a>,右边不指定宽。</span>
Copy after login
nbsp;html>


    <meta>
    <title>做固定,右边自适应</title>
    <style>
    body{
        margin: 0;
    }
        .aside{
            background: red;
            width:200px;
            height: 500px;
            float: left;
        }
        .main {
            background: blue;
            height: 500px;
        }
    </style>


    <div>
        我是左边的
    </div>
    <div>
        我是主体
        我是主体
        我是主体
        我是主体
        我是主体
    </div>

Copy after login

I accidentally discovered this method while doing experiments, which was an unexpected surprise.

(2) Use padding to occupy the space

nbsp;html>


    <meta>
    <title>左侧固定右侧自适应</title>
    <style>
        .container {
            padding-left: 200px;
            width: 100%;
            position: relative;
        }
        .left{
            position: absolute;
            left: 0;
            right: 0;
            background: red;
            height: 500px;
            width: 200px;
        }
        .right{
            background: blue;
            width: 100%;
            height: 500px;
        }
    </style>


    <div>
        <div>zuobian</div>
        <div>
            新华社俄罗斯喀山3月23日电(记者 魏良磊)中俄执政党对话机制第六次会议和第五届中俄政党论坛23日在俄罗斯喀山举行。和俄罗斯联邦总统普京分别致贺信。
        </div>
    </div>

Copy after login

Note that absolute is separated from the document flow . .right's 100% is relative to the content width of the parent container, not the entire width.

(3) Parent: display:flex; left fixed width; right flex: 1. ok

nbsp;html>


    <meta>
    <title>左边固定,右边自适应</title>
    <style>
        .container{
            display: flex;
        }
        .left{
            width: 200px;
            height: 500px;
            background: red;
        }
        .right{
            background: blue;
            height: 500px;
            flex: 1;
        }
    </style>


    <div>
        <div>zuobian</div>
        <div>
            新华社俄罗斯喀山3月23日电(记者 魏良磊)中俄执政党对话机制第六次会议和第五届中俄政党论坛23日在俄罗斯喀山举行。和俄罗斯联邦总统普京分别致贺信。
        </div>
    </div>

Copy after login
弹性盒子很强,有木有。但是有的是要加前缀的,哪些要加自己查去,有一次做实验,电脑样式正确,手机就是不对,搞了好半天。
Copy after login
(4)父:display:table;左右:display:table-cell;左:定宽。
Copy after login
nbsp;html>


    <meta>
    <title>左边固定,右边自适应</title>
    <style>
        .container{
            display: table;
        }
        .left{
            width: 200px;
            height: 500px;
            background: red;
            display: table-cell;
        }
        .right{
            background: blue;
            height: 500px;
            display: table-cell;
        }
    </style>


    <div>
        <div>zuobian</div>
        <div>
            新华社俄罗斯喀山3月23日电(记者 魏良磊)中俄执政党对话机制第六次会议和第五届中俄政党论坛23日在俄罗斯喀山举行。罗斯联邦总统普京分别致贺信。
        </div>
    </div>

Copy after login
据说这是一种古老的方法,我咋不知道呢?可能我比较年轻吧!
Copy after login

The above is the detailed content of CSS layout is centered and aligned, with fixed width on the left and adaptive on the right.. For more information, please follow other related articles on the PHP Chinese website!

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)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
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)

Questions frequently asked by front-end interviewers Questions frequently asked by front-end interviewers Mar 19, 2024 pm 02:24 PM

In front-end development interviews, common questions cover a wide range of topics, including HTML/CSS basics, JavaScript basics, frameworks and libraries, project experience, algorithms and data structures, performance optimization, cross-domain requests, front-end engineering, design patterns, and new technologies and trends. . Interviewer questions are designed to assess the candidate's technical skills, project experience, and understanding of industry trends. Therefore, candidates should be fully prepared in these areas to demonstrate their abilities and expertise.

The evolution and application of CSS layout units: from pixels to relative units based on the font size of the root element The evolution and application of CSS layout units: from pixels to relative units based on the font size of the root element Jan 05, 2024 pm 05:41 PM

From px to rem: The evolution and application of CSS layout units Introduction: In front-end development, we often need to use CSS to implement page layout. Over the past few years, CSS layout units have evolved and developed. Initially we used pixels (px) as the unit to set the size and position of elements. However, with the rise of responsive design and the popularity of mobile devices, pixel units have gradually exposed some problems. In order to solve these problems, the new unit rem came into being and was gradually widely used in CSS layout. one

CSS Layout Tips: Best Practices for Implementing Circular Grid Icon Layout CSS Layout Tips: Best Practices for Implementing Circular Grid Icon Layout Oct 20, 2023 am 10:46 AM

CSS Layout Tips: Best Practices for Implementing Circular Grid Icon Layout Grid layout is a common and powerful layout technique in modern web design. The circular grid icon layout is a more unique and interesting design choice. This article will introduce some best practices and specific code examples to help you implement a circular grid icon layout. HTML structure First, we need to set up a container element and place the icon in this container. We can use an unordered list (&lt;ul&gt;) as a container, and the list items (&lt;l

Methods and techniques on how to implement waterfall flow layout through pure CSS Methods and techniques on how to implement waterfall flow layout through pure CSS Oct 20, 2023 pm 06:01 PM

Methods and techniques on how to implement waterfall flow layout through pure CSS. Waterfall layout (Waterfall Layout) is a common layout method in web design. It arranges content in multiple columns with inconsistent heights to form an image. Waterfall-like visual effects. This layout is often used in situations where a large amount of content needs to be displayed, such as picture display and product display, and has a good user experience. There are many ways to implement a waterfall layout, and it can be done using JavaScript or CSS.

CSS Positions layout method to implement responsive image layout CSS Positions layout method to implement responsive image layout Sep 26, 2023 pm 01:37 PM

CSSPositions layout method to implement responsive image layout In modern web development, responsive design has become an essential skill. In responsive design, image layout is one of the important considerations. This article will introduce how to use CSSPositions layout to implement responsive image layout and provide specific code examples. CSSPositions is a layout method of CSS that allows us to position elements arbitrarily in the web page as needed. In responsive image layout,

CSS Layout Tutorial: The Best Way to Implement Holy Grail Layout CSS Layout Tutorial: The Best Way to Implement Holy Grail Layout Oct 19, 2023 am 10:19 AM

CSS Layout Tutorial: The Best Way to Implement Holy Grail Layout, with Code Examples Introduction: In web development, layout is a very important part. A good layout can make a web page more readable and accessible. Among them, the Holy Grail layout is a very classic layout method. It can center the content and maintain an elegant display effect while achieving adaptability. This article will introduce how to use the best method to implement the Holy Grail layout and give specific code examples. 1. What is the Holy Grail layout? The Holy Grail layout is a common three-column layout.

CSS Layout Tips: Best Practices for Implementing the Stacked Card Effect CSS Layout Tips: Best Practices for Implementing the Stacked Card Effect Oct 22, 2023 am 08:19 AM

CSS Layout Tips: Best Practices for Achieving Stacked Card Effects In modern web design, card layout has become a very popular design trend. Card layout can effectively display information, provide a good user experience, and facilitate responsive design. In this article, we’ll share some of the best CSS layout techniques for achieving a stacked card effect, along with specific code examples. Layout using Flexbox Flexbox is a powerful layout model introduced in CSS3. It can easily achieve the effect of stacking cards

CSS layout tutorial: The best way to implement a two-column responsive layout CSS layout tutorial: The best way to implement a two-column responsive layout Oct 18, 2023 am 11:04 AM

CSS Layout Tutorial: The Best Way to Implement Two-Column Responsive Layout Introduction: In web design, responsive layout is a very important technology that allows web pages to automatically adjust their layout according to the screen size and resolution of the user's device, providing Better user experience. In this tutorial, we'll show you how to use CSS to implement a simple two-column responsive layout, and provide specific code examples. 1. HTML structure: First, we need to create a basic HTML structure, as shown below: &lt;!DOCTYPEht

See all articles