CSS3弹性盒子多媒体查询

Posted 互联网IT信息

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CSS3弹性盒子多媒体查询相关的知识,希望对你有一定的参考价值。


1CSS3弹性盒子


弹性盒子是 CSS3 的一种新的布局模式。

    CSS3 弹性盒( Flexible Box 或 flexbox),是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间。

案例:效果图:

代码实例:


#box li:nth-child(1){-webkit-flex:1;flex:1;}

#box li:nth-child(2){-webkit-flex:1;flex:1;}

#box li:nth-child(3){-webkit-flex:1;flex:1;}

#box2 li:nth-child(1){-webkit-flex:1 0 100px;flex:1 0 100px;}

#box2 li:nth-child(2){-webkit-flex:2 0 100px;flex:2 0 100px;}

#box2 li:nth-child(3){-webkit-flex:3 0 100px;flex:3 0 100px;}

#box3 li:nth-child(1){-webkit-flex:1 1 400px;flex:1 1 400px;}

#box3 li:nth-child(2){-webkit-flex:1 2 400px;flex:1 2 400px;}

#box3 li:nth-child(3){-webkit-flex:1 2 400px;flex:1 2 400px;}

2CSS3多媒体查询


CSS2和CSS3 多媒体类型对比

CSS2 多媒体查询 

    @media 规则在 CSS2 中有介绍,针对不同媒体类型可以定制不同的样式规则

CSS3 多媒体查询

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

媒体查询可用于检测很多事情,例如:

    viewport(视窗) 的宽度与高度

    设备的宽度与高度

    朝向 (智能手机横屏,竖屏) 。

    分辨率

多媒体查询语法

多媒体查询由多种媒体组成,可以包含一个或多个表达式,表达式根据条件是否成立返回 true 或 false。


@media not|only mediatype and (expressions) {

    CSS-Code;

}

多媒体查询的结果:

    如果指定的多媒体类型匹配设备类型则查询结果返回 true,文档会在匹配的设备上显示指定样式效果。

    除非使用了 not 或 only 操作符,否则所有的样式会适应在所有设备上显示效果。

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

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

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

多媒体查询简单实例

使用多媒体查询可以在指定的设备上使用对应的样式替代原有的样式。

以下实例中在屏幕可视窗口尺寸大于 500 像素的设备上修改背景颜色:

案例:效果图:

代码实例:


<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8" />

<title>media</title>

<style>

body{

background-color: pink;

}

@media all and (min-width:500px) and (max-width:1000px){

body{color:#f00; background-color: blue;}

}

</style>

</head>

<body>

<div>当页面可见宽度大于500px小于1000px时,本行文字显示为红色。</div>

</body>

</html>

以上是关于CSS3弹性盒子多媒体查询的主要内容,如果未能解决你的问题,请参考以下文章

关于CSS3弹性盒子的flex布局以及媒体查询

关于CSS3弹性盒子的flex布局以及媒体查询

前端CSS3弹性布局媒体查询实现响应式布局和自适应布局

弹性盒的属性了解和媒体查询

css3新增特性

CSS3媒体查询总结