目录
(2)用padding占位子的方法" >(2)用padding占位子的方法
(3)父:display:flex;左定宽;右flex:1。ok" >(3)父:display:flex;左定宽;右flex:1。ok
首页 web前端 css教程 CSS布局居中对齐,左侧定宽右侧自适应详细介绍

CSS布局居中对齐,左侧定宽右侧自适应详细介绍

Mar 31, 2017 am 10:34 AM
css布局

    CSS页面布局是web前端开发的最基本的技能,本文将介绍一些常见的布局方法,涉及到盒子布局,column布局,flex布局等内容。本文中,你可以看到一些水平垂直居中的方法,左侧固定宽度,右侧自适应的一些方法。如果你有更多关于布局方面的技巧,欢迎留言交流。一、神奇的居中    经常看到有一些面试题问如何实现水平垂直居中,还要求用多种方法。唉唉唉!下面介绍一下我所知道的实现居中的方法。(1)父元素relative;子元素absolute,top:50%;left:50%;margin-left:-自己宽度的一半;margin-right:-自己高度的一半。
登录后复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>水平垂直居中2</title>
    <style type="text/css">
        .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>
</head>
<body>
    <div>
        <div></div>
    </div>
</body>
</html>
登录后复制

 这种方法需要知道子元素的宽高。

(2)父元素:relative;子元素:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
登录后复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>水平垂直居中3</title>
    <style type="text/css">
        .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>
</head>
<body>
    <div>
        <div></div>
    </div>
</body>
</html>
登录后复制
<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布局居中对齐,左侧定宽右侧自适应详细介绍"    style="max-width:90%"  style="max-width:90%" title="CSS布局居中对齐,左侧定宽右侧自适应详细介绍"><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>
登录后复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>水平垂直居中1</title>
    <style type="text/css">
        .container{
            width: 100%;
            height: 400px;
            background: red;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        .child{
            width: 300px;
            height: 300px;
            background: blue;
        }
    </style>
</head>
<body>
    <div>
        <div></div>
    </div>
</body>
</html>
登录后复制

这种方法看起来有些高大上,根本不用理会子元素。

(4)水平居中的方法,父元素:text-align:center
登录后复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>水平垂直居中4</title>
    <style type="text/css">
        .container{
            background: red;
            width: 100%;
            height: 500px;
            text-align: center;
        }
        .child{
            background: blue;
            width: 300px;
            height: 300px;
            margin: auto;
        }
    </style>
</head>
<body>
    <div>
        <div></div>
    </div>
</body>
</html>
登录后复制
<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>
登录后复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>做固定,右边自适应</title>
    <style type="text/css">
    body{
        margin: 0;
    }
        .aside{
            background: red;
            width:200px;
            height: 500px;
            float: left;
        }
        .main {
            background: blue;
            height: 500px;
        }
    </style>
</head>
<body>
    <div>
        我是左边的
    </div>
    <div>
        我是主体
        我是主体
        我是主体
        我是主体
        我是主体
    </div>
</body>
</html>
登录后复制

做实验时无意发现了这种方法,意外之喜。

(2)用padding占位子的方法

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>左侧固定右侧自适应</title>
    <style type="text/css">
        .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>
</head>
<body>
    <div>
        <div>zuobian</div>
        <div>
            新华社俄罗斯喀山3月23日电(记者 魏良磊)中俄执政党对话机制第六次会议和第五届中俄政党论坛23日在俄罗斯喀山举行。和俄罗斯联邦总统普京分别致贺信。
        </div>
    </div>
</body>
</html>
登录后复制

注意了,absolute是脱离文档流的。.right的100%是相对于父容器的内容宽度的,不是整个宽度。

(3)父:display:flex;左定宽;右flex:1。ok

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>左边固定,右边自适应</title>
    <style type="text/css">
        .container{
            display: flex;
        }
        .left{
            width: 200px;
            height: 500px;
            background: red;
        }
        .right{
            background: blue;
            height: 500px;
            flex: 1;
        }
    </style>
</head>
<body>
    <div>
        <div>zuobian</div>
        <div>
            新华社俄罗斯喀山3月23日电(记者 魏良磊)中俄执政党对话机制第六次会议和第五届中俄政党论坛23日在俄罗斯喀山举行。和俄罗斯联邦总统普京分别致贺信。
        </div>
    </div>
</body>
</html>
登录后复制
弹性盒子很强,有木有。但是有的是要加前缀的,哪些要加自己查去,有一次做实验,电脑样式正确,手机就是不对,搞了好半天。
登录后复制
(4)父:display:table;左右:display:table-cell;左:定宽。
登录后复制
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>左边固定,右边自适应</title>
    <style type="text/css">
        .container{
            display: table;
        }
        .left{
            width: 200px;
            height: 500px;
            background: red;
            display: table-cell;
        }
        .right{
            background: blue;
            height: 500px;
            display: table-cell;
        }
    </style>
</head>
<body>
    <div>
        <div>zuobian</div>
        <div>
            新华社俄罗斯喀山3月23日电(记者 魏良磊)中俄执政党对话机制第六次会议和第五届中俄政党论坛23日在俄罗斯喀山举行。罗斯联邦总统普京分别致贺信。
        </div>
    </div>
</body>
</html>
登录后复制
据说这是一种古老的方法,我咋不知道呢?可能我比较年轻吧!
登录后复制

以上是CSS布局居中对齐,左侧定宽右侧自适应详细介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

前端面试官常问的问题 前端面试官常问的问题 Mar 19, 2024 pm 02:24 PM

在前端开发面试中,常见问题涵盖广泛,包括HTML/CSS基础、JavaScript基础、框架和库、项目经验、算法和数据结构、性能优化、跨域请求、前端工程化、设计模式以及新技术和趋势。面试官的问题旨在评估候选人的技术技能、项目经验以及对行业趋势的理解。因此,应试者应充分准备这些方面,以展现自己的能力和专业知识。

CSS布局单位的演变与应用:从像素到根据根元素字体大小的相对单位 CSS布局单位的演变与应用:从像素到根据根元素字体大小的相对单位 Jan 05, 2024 pm 05:41 PM

从px到rem:CSS布局单位的演变与应用引言:在前端开发中,我们经常需要用到CSS来实现页面布局。在过去的几年间,CSS布局单位也经历了演变和发展。最开始我们使用的是像素(px)作为单位来设置元素的大小和位置。然而,随着响应式设计的兴起和移动设备的普及,像素单位逐渐暴露出一些问题。为了解决这些问题,新的单位rem应运而生,并逐渐被广泛应用于CSS布局中。一

如何通过纯CSS实现瀑布流布局的方法和技巧 如何通过纯CSS实现瀑布流布局的方法和技巧 Oct 20, 2023 pm 06:01 PM

如何通过纯CSS实现瀑布流布局的方法和技巧瀑布流布局(WaterfallLayout)是一种在网页设计中常见的布局方式,它通过将内容以多列的方式排列,每一列的高度不一致,从而形成像瀑布般的视觉效果。这种布局常常被应用于图片展示、商品展示等需要展示大量内容的情景中,具有良好的用户体验。实现瀑布流布局的方法有很多种,可以使用JavaScript或CSS来完成。

CSS布局技巧:实现圆形网格图标布局的最佳实践 CSS布局技巧:实现圆形网格图标布局的最佳实践 Oct 20, 2023 am 10:46 AM

CSS布局技巧:实现圆形网格图标布局的最佳实践在现代网页设计中,网格布局是一种常见且强大的布局技术。而圆形网格图标布局则是一种更加独特和有趣的设计选择。本文将介绍一些最佳实践和具体代码示例,帮助你实现圆形网格图标布局。HTML结构首先,我们需要设置一个容器元素,在这个容器里放置图标。我们可以使用一个无序列表(&lt;ul&gt;)作为容器,列表项(&lt;l

CSS Positions布局实现响应式图片排版的方法 CSS Positions布局实现响应式图片排版的方法 Sep 26, 2023 pm 01:37 PM

CSSPositions布局实现响应式图片排版的方法在现代Web开发中,响应式设计已成为一种必备的技能。而在响应式设计中,图片排版是一个重要的考虑因素之一。本文将介绍如何使用CSSPositions布局实现响应式图片排版,并提供具体的代码示例。CSSPositions是CSS的一种布局方式,它可以让我们根据需要在网页中任意定位元素。在响应式图片排版中,

CSS布局技巧:实现堆叠卡片效果的最佳实践 CSS布局技巧:实现堆叠卡片效果的最佳实践 Oct 22, 2023 am 08:19 AM

CSS布局技巧:实现堆叠卡片效果的最佳实践在现代网页设计中,卡片式布局成为了一种非常流行的设计趋势。卡片布局能够有效地展示信息,提供良好的用户体验,并且方便响应式设计。在这篇文章中,我们将分享一些实现堆叠卡片效果的最佳CSS布局技巧,同时提供具体的代码示例。使用Flexbox布局Flexbox是CSS3中引入的一种强大的布局模型。它能够轻松地实现堆叠卡片效果

CSS布局教程:实现圣杯布局的最佳方法 CSS布局教程:实现圣杯布局的最佳方法 Oct 19, 2023 am 10:19 AM

CSS布局教程:实现圣杯布局的最佳方法,附带代码示例引言:在网页开发中,布局是非常重要的一部分。好的布局能够使网页达到更好的可读性和可访问性。其中,圣杯布局是一种非常经典的布局方式,它能够在实现自适应的情况下使内容居中,保持优雅的显示效果。本文将为大家介绍如何使用最佳的方法实现圣杯布局,并给出具体的代码示例。一、什么是圣杯布局?圣杯布局是一种常见的三栏布局,

CSS布局教程:实现两栏响应式布局的最佳方法 CSS布局教程:实现两栏响应式布局的最佳方法 Oct 18, 2023 am 11:04 AM

CSS布局教程:实现两栏响应式布局的最佳方法简介:在网页设计中,响应式布局是一种非常重要的技术,它能使网页根据用户设备的屏幕大小和分辨率自动调整布局,提供更好的用户体验。在本教程中,我们将介绍如何使用CSS来实现一个简单的两栏响应式布局,并提供具体的代码示例。一、HTML结构:首先,我们需要创建一个基本的HTML结构,如下所示:&lt;!DOCTYPEht

See all articles