Grid布局 --- 初期尝试

CSS:Grid 布局

网格布局特性主要是针对于Web应用程序的开发者。可以用这个模块实现许多不同的布局。网络布局可以将应用程序分割成不同的空间,或者定义他们的大小、位置以及层级。
  就像表格一样,网格布局可以让Web设计师根据元素按列或行对齐排列,但他和表格不同,网格布局没有内容结构,从布使各种布局不可能与表格一样。例如,一个网格布局中的子元素都可以定位自己的位置,这样他们可以重叠和类似元素定位。
  此外,没有内容结构的网格布局有助于使用流体、调整顺序等技术管理或更改布局。通过结合CSS的媒体查询属性,可以控制网格布局容器和他们的子元素,使用页面的布局根据不同的设备和可用空间调整元素的显示风格与定位,而不需要去改变文档结构的本质内容。

Grid 语法简要

设置父元素布局为 grid ,即可使用 grid-template-columnsgrid-template-rows 定义网格的列数、行数以及网格的大小。

.box {
    display: grid | inline-grid | subgrid;
    grid-template-columns: <track-size> ... | <line-name> <track-size> ...;
    grid-template-rows: <track-size> ... | <line-name> <track-size> ...;
}

子元素可使用 grid-area 合并网格或位移。

.box-child{
    grid-area: x / x / x / x;
}

实操

效果图

编写HTML

<div class="m-main-fu-wu">
                    <div class="m-fu-wu-1">
                        <h3 class="m-fu-wu-title">金融服务</h3>
                        <small>Financial Services</small>
                    </div>
                    <div class="m-fu-wu-2">
                        <div class="m-text-wrapper">
                            <h4 class="m-common-title">MoneyMoney红</h4>
                            <small>MoneyMoney红一句话介绍Money<br>
                            Money红一句话介绍</small>
                        </div>
                    </div>
                    <div class="m-fu-wu-3">
                        <div class="m-text-wrapper">
                            <h4 class="m-common-title">佐罗侃侃</h4>
                            <small>佐罗侃侃一句话介绍,佐罗侃侃<br>
                                一句话介绍</small>
                        </div>
                    </div>
                    <div class="m-fu-wu-4">      
                        <div class="m-text-wrapper s-strong">
                            <h4 class="m-common-title">投资分享会</h4>
                            <small>投资分享会一句话介绍,投资分享会</small>
                        </div>
                    </div>
                    <div class="m-fu-wu-5">
                        <div class="m-text-wrapper s-strong">
                            <h4 class="m-common-title">猎牛俱乐部</h4>
                            <small>猎牛俱乐部一句话介绍,猎牛俱乐部一句话介绍</small>
                        </div>
                    </div>
                </div>

编写CSS

.m-main-fu-wu{
    margin-top: 80px;
    display: grid;
    height: 546px;
    grid-template-rows: 228px 45px 273px;
    grid-template-columns: 362px 319px 319px;
    grid-column-gap:0;
    grid-row-gap:0;
    
}
.m-fu-wu-1{
    grid-area: 1 / 1 / 3 / 2;
    background: #E60012;
}
.m-fu-wu-4{
    grid-area: 3 / 1 / 4 / 2;
}
.m-fu-wu-5{
    grid-area: 2 / 2 / 4 / 4;
}
.m-fu-wu-title{
    margin-top: 100px;
    margin-bottom: 18px;
    margin-left: 40px;
    font-size: 32px;
    color: #fff;
    letter-spacing: 1px;
}
.m-fu-wu-1 small{
    margin-left: 40px;
    font-size: 18px;
    color: #fff;
}
.m-common-title{
    margin-bottom: 8px;
    font-size: 18px;
    color: #fff;
}
.m-text-wrapper small{
    font-size: 13px;
    color: #fff;
    line-height: 1.5em;
}
.m-text-wrapper{
    position: absolute;
    bottom: 8px;
    right: 15px;
    text-align: right;
}
.m-text-wrapper.s-strong .m-common-title{
    font-size: 24px;
}
.m-text-wrapper.s-strong small{
    font-size: 16px;
}
.m-text-wrapper.s-strong{
    bottom: 12px;
    right: 20px;
}

总结

Grid布局固然好用,但目前兼容性还不是很好,一般配合webpack一起使用。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 温馨提示:本文较长,图片较多,本来是想写一篇 CSS 布局方式的,但是奈何 CSS 布局方式种类太多并且实现...
    sunshine小小倩阅读 3,182评论 0 59
  • 简介CSS网格布局(又称“网格”),是一种二维网格布局系统。CSS在处理网页布局方面一直做的不是很好。一开始我们用...
    _leonlee阅读 65,212评论 25 173
  • 简介 CSS Grid布局 (又名"网格"),是一个基于二维网格布局的系统,旨在改变我们基于网格设计的用户界面方式...
    咕咚咚bells阅读 2,558评论 0 4
  • 原文地址:Getting to know CSS Grid Layout 原文作者:Chris Wright 译者...
    iKcamp阅读 3,799评论 0 13
  • 渐渐地,我发现我害怕读别人的作品, 我害怕我的文字不能被人接受, 我也问过自己我喜欢写什么样的文章去表达真实的我。...
    我许天辰阅读 174评论 0 1