创新互联CSS教程:响应式Web设计–媒体查询

响应式 Web 设计 - 媒体查询


媒体(media)查询在 CSS3 上有介绍:CSS3 @media 查询。

创新互联公司是专业的丘北网站建设公司,丘北接单;提供成都做网站、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行丘北网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

使用 @media 查询,你可以针对不同的媒体类型定义不同的样式。

实例

如果浏览器窗口小于 500px, 背景将变为浅蓝色:

@media only screen and (max-width: 500px) {


body {
background-color:
lightblue;}}

尝试一下 »


添加断点

在先前的教程中我们使用行和列来制作网页,它是响应式的,但在小屏幕上并不能友好的展示。

媒体查询可以帮我们解决这个问题。我们可以在设计稿的中间添加断点,不同的断点有不同的效果。

桌面设备

手机设备

使用媒体查询在 768px 添加断点:

实例

当屏幕 (浏览器窗口) 小于 768px, 每一列的宽度是 100%:

/* For desktop: */


.col-1 {
width:
8.33%;}


.col-2 {
width:
16.66%;}


.col-3 {
width:
25%;}


.col-4 {
width:
33.33%;}


.col-5 {
width:
41.66%;}


.col-6 {
width:
50%;}


.col-7 {
width:
58.33%;}


.col-8 {
width:
66.66%;}


.col-9 {
width:
75%;}


.col-10 {
width:
83.33%;}


.col-11 {
width:
91.66%;}


.col-12 {
width:
100%;}


@media only screen and (max-width: 768px) {
  /* For mobile phones: */
[class*="col-"] {width: 100%;}}


尝试一下 »


为移动端优先设计

移动端优先意味着在设计桌面和其他设备时优先考虑移动端的设计。

这就意味着我们必须对 CSS 做一些改变。

我们在屏幕小于 768px 进行样式修改,同样在屏幕宽度大于 768px 时也需要修改样式。以下是移动端优先实例:

/* 为移动端设计: */


[class*="col-"] {
width:
100%;}


@media only screen and (min-width: 768px) {
  /* For desktop: */
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}}


其他断点

你可以根据自己的需要添加断点。

我们同样可以为平板设备和移动手机设备设置断点。

桌面设备

平板设备

手机设备

在屏幕为 600px 时添加媒体查询,并设置新的样式(屏幕大于 600px 但小于 768px):

实例

注意两组类样式是相同的,但名称不同 (col- 和 col-m-):

/* For mobile phones: */


[class*="col-"] {
width:
100%;}


@media only screen and (min-width: 600px) {
   /* For tablets: */
.col-m-1 {width: 8.33%;}
.col-m-2 {width: 16.66%;}
.col-m-3 {width: 25%;}
.col-m-4 {width: 33.33%;}
.col-m-5 {width: 41.66%;}
.col-m-6 {width: 50%;}
.col-m-7 {width: 58.33%;}
.col-m-8 {width: 66.66%;}
.col-m-9 {width: 75%;}
.col-m-10 {width: 83.33%;}
.col-m-11 {width: 91.66%;}
.col-m-12 {width: 100%;}}
@media only screen and (min-width: 768px) { /* For desktop: */
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;} }

尝试一下 »

以上代码看起来很多余,但是他可以根据屏幕大小自动设置不同的样式,所以还是非常必要的。

HTML 实例

针对桌面设备:

第一和第三部分跨越 3 列。中间部分跨域 6 列。

针对平板设备:

第一跨域 3列,第二部分跨越 9 列,第三部分跨域 12 列:

<
div
class=
"row"
>


<
div
class=
"col-3 col-m-3"
>...
<
/div
>


<
div
class=
"col-6 col-m-9"
>...
<
/div
>


<
div
class=
"col-3 col-m-12"
>...
<
/div
>


<
/div
>


方向:横屏/竖屏

结合 CSS 媒体查询,可以创建适应不同设备的方向(横屏 landscape、竖屏 portrait 等)的布局。

语法:

orientation:portrait | landscape

  • portrait:指定输出设备中的页面可见区域高度大于或等于宽度
  • landscape: 除 portrait 值情况外,都是 landscape

实例

如果是横屏背景将是浅蓝色:

@media only screen and (orientation: landscape) {


body {
background-color:
lightblue;}}

尝试一下 »

分享题目:创新互联CSS教程:响应式Web设计–媒体查询
URL分享:http://www.shufengxianlan.com/qtweb/news6/208456.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联