当前位置:首页 > 技术 >

网页设计css布局方式(css制作网页布局代码)

来源:原点资讯(www.yd166.com)时间:2023-02-09 15:47:00作者:YD166手机阅读>>

合并单元行与合并单元列

自定义网格线名称

在 grid 中,是可以自定义网格线的名称的,然后使用定义好的网格线来进行布局,[col1-start] 网格线名称一定要使用 [] 括住

<div class="grid-container"> <div class="item a">a</div> <div class="item b">b</div> <div class="item c">c</div> <div class="item d">d</div> <div class="item e">e</div> <div class="item f">f</div> <div class="item g">g</div> <div class="item h">h</div> <div class="item i">i</div> <div class="item j">j</div> </div>复制代码

.grid-container{ text-align: center; height: 400px; padding: 100px; display: grid; grid-column-gap: 5px; grid-row-gap: 5px; background: pink; grid-template-columns: [col1-start] 100px [col1-end] 5px [col2-start] 100px [col2-end] 5px [col3-start] 100px [col3-end] 5px [col4-start] 100px [col4-end]; grid-template-rows: [row1-start] auto [row1-end] 5px [row2-start] auto [row2-end] 5px [row3-start] auto [row3-end] 5px [row4-start] auto [row4-end] 5px [row5-start] auto [row5-end]; } .a { grid-column: col1-start / col3-end; grid-row: row1-start; background: #ffffff;} .b { grid-column: col4-start / col4-end; grid-row: row1-start / row5-end; background: orange; } .c { grid-column: col1-start; grid-row: row2-start; background: #ffffff;} .d { grid-column: col2-start; grid-row: row2-start; background: #ffffff;} .e { grid-column: col3-start; grid-row: row2-start; background: #ffffff;} .f { grid-column: col1-start / col2-end; grid-row: row3-start; background: #ffffff;} .g { grid-column: col3-start; grid-row: row3-start; background: #ffffff;} .h { grid-column: col1-start; grid-row: row4-start; background: #ffffff;} .i { grid-column: col2-start / col3-end; grid-row: row4-start; background: #ffffff;} .j { grid-column: col1-start / col3-end; grid-row: row5-start; background: #ffffff;}复制代码

最后的显示效果是这样的(文字和辅助线是后台添加的):

网页设计css布局方式,css制作网页布局代码(29)

自定义网格线名称

通过网格区域命名和定位网格项目什么是网格区域:

网格区域(grid-area)是一个逻辑空间,主要用来放置一个或多个网格单元格(Grid Cell)。他是由四条网格线(Grid line),网格区域每边一条,四边相交组织的网格轨道(Grid Track)。简单点理解,网格区域是有四条网格线交织组成的网格空间,这个空间中可能是一个网格单元格,也可能是多个网格单元格。

定义网格区域

在CSS Grid Layout中定义网格区域有两种方式,一种是通过网格线来定义,另一种是通过grid-template-areas来定义。接下来看看两种定义网格区域的方法在具体使用过程中有何不同。

网格线定义网格区域

使用网格线定义网格区域的方法非常的简单,首先依赖于 grid-template-columns 和 grid-template-rows 显式定义网格线,甚至是由浏览器隐式创建网格线,然后通过 grid-area 属性通过取网格线,组成网格线交织区域,那么这个区域就是所讲的网格区域。在使用 grid-area 属性调用网格线,其遵循的规则是 grid-area: row-start/ column-start / row-end / column-end。

grid-template-areas 定义网格区域

除了使用网格线的交组来定义网格区域之外,在 CSS Grid Layout 中还可以通过 grid-template-areas 属性来定义网格区域的名称,然后需要放在对应网格区域的元素,可以通过 grid-area 属性来指定。而且重复区域可以使用同一个名称来实现跨区域。另外对于空的轨道区域,可以使用点号 . 来代表

<div class="grid-container"> <div class="header ">header</div> <div class="content ">content</div> <div class="sidebar ">sidebar</div> <div class="footer ">footer</div> </div>复制代码

.grid-container{ text-align: center; padding: 20px; display: grid; grid-column-gap: 5px; grid-row-gap: 5px; background: pink; grid-template-areas: "header header header header header" "sidebar content content content content" "footer footer footer footer footer"; grid-template-rows: 50px 150px 50px; grid-template-columns: 200px 200px 200px; } .header { grid-area:header; background: #fff} .content { grid-area: content; background: #fffa90} .sidebar { grid-area: sidebar; background: #5bc0de} .footer { grid-area: footer; background: #ffff00}复制代码

网页设计css布局方式,css制作网页布局代码(30)

grid-template-areas 定义网格区域

我发现这样布局的一个优点,在不设置高度的情况下(父容器和 grid-template-rows 的值,或者 grid-template-rows 设置为 auto 时,slider 和 content 的高度是一致的,并且会根据其内的高度自适应)

例如:

网页设计css布局方式,css制作网页布局代码(31)

不设置高度使高度自适应

常用的 CSS 布局

在介绍了 CSS 的布局方式之后,我们来看一下常用的 CSS 布局有哪些

水平垂直居中(感觉总结的并不是很好)

感觉垂直居中真的是已经被讲烂了,但是在平时做项目时,我都是靠试的,导致面试的时候被问到有时候回答不上来,现在就用自己的方式来总结一下。其实这个方式是有很多的,但就是看的教程太多了,导致最后一个都没有记住,所以我决定尽可能的将情况考虑完整,然后每一种情况只记住一个最佳实践。

对于居中,我个人认为不需要背什么“x 种方式实现 xx”这样的例子,我们只需要了解其原理即可写出符合要求的 css。

水平、垂直居中,个人比较喜欢用绝对定位的方法实现,其次就是使用 table 布局,因为自带垂直居中。如果是单行的行内元素使用 line-height 等于 height,对于多行元素的垂直居中,大部分都是使用 table 元素(求推荐更好的布局),当然还有 flex 和 grid 布局。

水平居中

一般水平居中还是比较容易的,我一般都是先看子元素是固定宽度还是宽度未知

固定宽度

这种方式是绝对定位居中,除了使用 margin,我们还可以使用 transform(注意浏览器兼容性,只适用于 ie9 ,移动开发请忽略)

.container{ width: 300px; height: 200px; background: pink; position: relative; } .inner{ width: 100px; height: 50px; position: absolute; top: 50%; left: 50%; margin-top: -25px; margin-left: -50px; background: #fff; text-align: center; }复制代码

.container{ width: 300px; height: 200px; background: pink; position: relative; } .inner{ width: 100px; height: 50px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #fff; text-align: center; }复制代码

或者使用 magin:0 auto;但一般情况下我都会使用上一种,因为习惯了(ಥ_ಥ)

宽度未知

将子元素设置为行内元素,然后父元素设置 text-align: center。

.container{ width: 300px; height: 200px; background: pink; position: relative; text-align: center; } .inner{ display: inline-block; }复制代码多个块状元素

上面的方式即使子元素不止一个也想实现水平居中也是有效的,(宽度固定不固定都可,不固定的话就不需要设置宽度,会被自动撑开,但是要考虑到撑爆的情况)例如:

.container{ width: 250px; height: 200px; background: pink; position: relative; text-align: center; padding: 20px; } .inner{ display: inline-block; width: 50px; height: 150px; margin: 0 auto; background: #fff; text-align: center; }复制代码

网页设计css布局方式,css制作网页布局代码(32)

栏目热文

css div布局的基本步骤(divcss实现几种经典布局详解)

css div布局的基本步骤(divcss实现几种经典布局详解)

DIV CSS标准化布局的优势使用“DIV CSS”对网站进行布局符合W3C标准,采用这种方式布局通常是为了说明与HTM...

2023-02-09 15:09:20查看全文 >>

css100个经典案例(css100个必备技巧)

css100个经典案例(css100个必备技巧)

一、如何写出这样的页面?1、解题:(1)第一行 四大名著 :这个是个大标题。(2)观察全局:2、代码实现:备注:代码部分...

2023-02-09 15:26:02查看全文 >>

门下垂怎么调整视频(木头门下垂怎么调整视频)

门下垂怎么调整视频(木头门下垂怎么调整视频)

综合橙柿互动、新闻晨报、@中国国际航空、航空资源网、网友评论等1月27日下午#国航航班颠簸下坠乘客录视频防不测#话题冲上...

2023-02-09 15:49:48查看全文 >>

门铰链调节(门铰链的调整安装方法)

门铰链调节(门铰链的调整安装方法)

铰链是连接柜门和柜体的重要五金配件,是整个家居行业不可或缺的,每当家里装修的时候你看见木工师傅熟练地进行柜门铰链安装,你...

2023-02-09 15:22:09查看全文 >>

铰链如何调整门的上下(门上下不平门铰链怎么调)

铰链如何调整门的上下(门上下不平门铰链怎么调)

看上面图片上的前凸后平,像不像个飞机模型?所以它又叫“飞机合页”。当然除了这个比较有趣的名字以外,它还有一些更显专业的名...

2023-02-09 15:25:57查看全文 >>

div css布局经典实例(divcss排版布局步骤)

div css布局经典实例(divcss排版布局步骤)

前段时间我们分享了HTML&CSS—DIV CSS布局实例项目前五节课内容,今天继续为大家分享第六节课内容。后续...

2023-02-09 15:54:06查看全文 >>

网页制作css布局(网页设计布局图css代码)

网页制作css布局(网页设计布局图css代码)

大家好,我是三木。这篇文章,替大家汇总了css的布局方式,在每个布局的结尾附上了我认为比较好的文章链接,不仅仅可以当作学...

2023-02-09 15:49:47查看全文 >>

网页排版布局框架图(网页布局图设计工具)

网页排版布局框架图(网页布局图设计工具)

转自公众号:logo设计视觉010203040506070809本文转自微信公众号:logo设计视觉,图片来源网络,版权...

2023-02-09 15:24:30查看全文 >>

css grid布局详细图解(图解css grid 布局)

css grid布局详细图解(图解css grid 布局)

分享兴趣,传播快乐,增长见闻,留下美好!亲爱的您,这里是LearningYard新学苑。今天小编为大家带来华硕前端1...

2023-02-09 15:18:07查看全文 >>

div css布局技巧

div css布局技巧

我们在网页制作中,会有许多的术语例如:CSS、HTML、DHTML、XHTML等等。下面开始使用Div CSS进行网页布...

2023-02-09 15:23:03查看全文 >>

文档排行