CSS3 多媒体查询、网格布局

一、CSS3多媒体查询:

CSS3 多媒体查询继承了CSS2多媒体类型的所有思想,取代了查找设备的类型。CSS3根据设置自适应显示。

多媒体查询语法:

@media not|only mediatype and (expressions)

{

CSS 代码...;

}

not: not是用来排除掉某些特定的设备的,比如 @media not print(非打印设备)。

only: 用来定某种特别的媒体类型。对于支持Media Queries的移动设备来说,如果存在only关键字,移动设备的Web浏览器会忽略only关键字并直接根据后面的表达式应用样式文件。对于不支持Media Queries的设备但能够读取Media Type类型的Web浏览器,遇到only关键字时会忽略这个样式文件。

all: 所有设备,这个应该经常看到。

CSS3多媒体类型:

二、CSS3网格布局:

网格式一组相交的水平线和垂直线,它定义了网格的列和行。CSS提供了一个基于网格的布局系统,带有行和列。

网格布局有一个父元素以及一个或多个子元素组成。

当元素将display属性设置为grid或inline-grid后,它就变成一个网格容器。这个元素的所有直系子元素将成为网格元素。示例:

<style>

.grid-container {

display: inline-grid;

grid-template-columns: auto auto auto;

background-color: #2196F3;

padding: 10px;

}

.grid-item {

background-color: rgba(255, 255, 255, 0.8);

border: 1px solid rgba(0, 0, 0, 0.8);

padding: 20px;

font-size: 30px;

text-align: center;

}

</style>

<h1>display: inline-grid</h1>

通过grid-template-columns和grid-template-rows属性来定义网格中的行和列。这些属性定义了网格的轨道。一个网格轨道就是网格中任意两条线之间的空间。示例:

<style>

.grid-container {

display: grid;

grid-template-columns: auto auto auto auto;

grid-gap: 10px;

background-color: #2196F3;

padding: 10px;

}

.grid-container > div {

background-color: rgba(255, 255, 255, 0.8);

text-align: center;

padding: 20px 0;

font-size: 30px;

}

</style>

fr单位:轨道可以使用任何长度单位来定义,fr单位用来创建网格轨道。一个fr单位代表网格容器中科用空间的一个等份。示例:

一个网格单元是在一个网格元素中最小的单位。

网格元素可以向行或者列的方向扩展单元,创建网格区域。网格区域的形状应该是一个矩形。

网格元素的垂直线方向称为列,网格元素的水平方向称为行,两个网格单元之间的网格横向或者纵向间距称为网格间距,通过grid-column-gap、grid-row-gap、grid-gap来调整间隙大小。

CSS网格属性:

|------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------|
| 属性 | 描述 |
| ++column-gap++ | 指定列之间的间隙 |
| ++gap++ | row-gap 和 column-gap 的简写属性 |
| ++grid++ | grid-template-rows, grid-template-columns, grid-template-areas, grid-auto-rows, grid-auto-columns, 以及 grid-auto-flow 的简写属性 |
| ++grid-area++ | 指定网格元素的名称,或者也可以是 grid-row-start, grid-column-start, grid-row-end, 和 grid-column-end 的简写属性 |
| ++grid-auto-columns++ | 指的默认的列尺寸 |
| ++grid-auto-flow++ | 指定自动布局算法怎样运作,精确指定在网格中被自动布局的元素怎样排列。 |
| ++grid-auto-rows++ | 指的默认的行尺寸 |
| ++grid-column++ | grid-column-start 和 grid-column-end 的简写属性 |
| ++grid-column-end++ | 指定网格元素列的结束位置 |
| ++grid-column-gap++ | 指定网格元素的间距大小 |
| ++grid-column-start++ | 指定网格元素列的开始位置 |
| ++grid-gap++ | grid-row-gap 和 grid-column-gap 的简写属性 |
| ++grid-row++ | grid-row-start 和 grid-row-end 的简写属性 |
| ++grid-row-end++ | 指定网格元素行的结束位置 |
| ++grid-row-gap++ | 指定网格元素的行间距 |
| ++grid-row-start++ | 指定网格元素行的开始位置 |
| ++grid-template++ | grid-template-rows, grid-template-columns 和 grid-areas 的简写属性 |
| ++grid-template-areas++ | 指定如何显示行和列,使用命名的网格元素 |
| ++grid-template-columns++ | 指定列的大小,以及网格布局中设置列的数量 |
| ++grid-template-rows++ | 指定网格布局中行的大小 |
| ++row-gap++ | 指定两个行之间的间距erer |

相关推荐
多多米100535 分钟前
初学Vue(2)
前端·javascript·vue.js
柏箱1 小时前
PHP基本语法总结
开发语言·前端·html·php
新缸中之脑1 小时前
Llama 3.2 安卓手机安装教程
前端·人工智能·算法
hmz8561 小时前
最新网课搜题答案查询小程序源码/题库多接口微信小程序源码+自带流量主
前端·微信小程序·小程序
看到请催我学习1 小时前
内存缓存和硬盘缓存
开发语言·前端·javascript·vue.js·缓存·ecmascript
blaizeer2 小时前
深入理解 CSS 浮动(Float):详尽指南
前端·css
编程老船长2 小时前
网页设计基础 第一讲:软件分类介绍、工具选择与课程概览
前端
编程老船长2 小时前
网页设计基础 第二讲:安装与配置 VSCode 开发工具,创建第一个 HTML 页面
前端
速盾cdn2 小时前
速盾:网页游戏部署高防服务器有什么优势?
服务器·前端·web安全
小白求学12 小时前
CSS浮动
前端·css·css3