导航

萌即是正义!时不时分享一些ACG活动记录与有趣代码的小站!

侧边栏
热门文章
1博文
360度带你看《超时空辉夜姬》联动KTV联动房间
热度
1374
2页面
程序员老黄历&求签
热度
1313
3推文
让AI生成了一个记账网页应用。 完全按照我自己的需求定制的记账应用。当然也有一定的通用性。 支持响应式布局,所以手机也能用。 本人只贡献了需求和修改了一丢丢UI体验。 成品还是很满意的,看来AI时代,小工具根本不需要下什么APP了。 直接自己定制应用的好时代来了呀! 项目地址:https://github.com/eeg1412/wikimoeBookkeeping ※截图是测试数据,不是我发财了。
热度
91
4博文
探访日本的废校:《中二病也要谈恋爱!》圣地巡礼之杜鹃花学校(原镰挂小学)
热度
91
5博文
《爱上火车》与《铁路浪漫谭》的圣地巡礼之人吉
热度
91
6页面
追番
热度
91
7推文
一个多月过去了,《超时空辉夜姬》仍然在上映。 想想一开始说一周限定上映,导致每天凌晨和数万人抢票。现在想想果然是中了饥饿营销的套路😅。 当然作品本身质量还是很棒的。只是这营销方式不是非常认可。
热度
78
8推文
给维基萌公会联盟增加了一些自动化处理。 虽然好像这游戏已经没人玩了,但还是更新了一些功能。 ·冒险家们可以直接一键升级到最高等级,直接连公会等级也自动升级了。 ·迷宫增加了自动挑战迷宫军团,一键打到最高等级的迷宫。 ·竞技场增加了自动对战,一键消耗完所有挑战次数。 ·增加了机器人玩家,会根据设定好的行动树模拟玩家操作,属于是把游戏玩成单机了。
热度
52
9博文
《点兔》官网愚人节活动「Magical Order Rabbit」
热度
52
10页面
友链
热度
52
最新评论
广树管理员
2026-04-13 21:03
@Eofs:嘿嘿 看过立省7500日元
Eofs
2026-04-13 11:19
哇这个全景好
广树管理员
2026-04-12 18:37
@PeterJXL:可以记一个假装自己暴富的收入
PeterJXL
2026-04-12 16:38
记账 8 年了,还是穷 😇
广树管理员
2026-04-12 14:05
@石樱灯笼:毕竟属于生活中高需求又需要一些私人定制的应用。
攻略中
告别回忆 双想 ~Not always true~
暂无评分
Steam告别回忆 双想 ~Not always true~
2026年3月10日 22时 ~ 攻略中
已累计游玩1个月4天
“我觅见了生命中的唯一,而后——”
亚路塔:狐狸狐途的面包冒险
暂无评分
Steam亚路塔:狐狸狐途的面包冒险
2026年2月12日 19时 ~ 攻略中
已累计游玩2个月
一场席卷全世界的面包革命现在开始! 主人公查雅阴错阳差之下,开始了在荒废的岛屿上经营面包店的生活。 出外冒险搜集食材、研发崭新面包配方、遇见性格各异的伙伴们,建造更丰富的设施,用面包香气使无人问津的广场再次热闹起来!
ToHeart
暂无评分
SteamToHeart
2025年6月26日 19时 ~ 攻略中
已累计游玩9个月21天
AQUAPLUS推出的“温暖人心的校园恋爱游戏”将以高清全3D形式焕新归来!
fault - StP - LIGHTKRAVTE
暂无评分
Steamfault - StP - LIGHTKRAVTE
2025年5月29日 20时 ~ 攻略中
已累计游玩10个月19天
全球累计销量超过50万份的“fault”系列最新作!故事的舞台是一个融合了奇幻与科幻的超前世界——卢森海德王国。本作讲述了生活在此地的一个平凡又平庸的究极普通市民——名为果子的少年的故事。
PSN奖杯卡

PSN奖杯卡

归档
赞助商广告

【响应式布局】响应式布局基础之媒体查询

作者:广树时间:2016-12-01 11:38:53分类:CSS/HTML

在以前的WEB概念中人们的第一反应往往是用“PC来看”,但是随着智能手机和平板的普及,用户的浏览环境逐渐倾向PC以外的终端。“响应式WEB”也因此受到了关注。

这次将简单说一下关于响应式布局中的媒体查询。


所谓的媒体查询?

媒体查询是从CSS2时代开始,以media标签发展而来的CSS3新元素。
类似下面的代码应该是大家都看过的。


<link rel="stylesheet" href="css/style.css" media="screen">
上面的代码是以通常显示器为对象,加载“style.css”。
也就是说,用户使用什么终端=用什么媒体来访问这么一回事。
比如想从大显示器转变为小显示器的时候,如果只能判断媒体(无法判断条件分支),仅凭CSS是什么都做不了的。

为了解决这一问题,扩张出了能够判断媒体特性的媒体查询诞生了。


主要的媒体类型

screen(一般的显示器)、projection(已废弃。 用于投影设备)、print(用于打印机和打印预览)、tv(已废弃。 用于电视和网络电视)、all(用于所有设备)等
参考:http://www.runoob.com/cssref/css3-pr-mediaquery.html

媒体查询的书写方式

媒体查询主要通过以下两种方法来实现。


通过link元素来指定

和以前的css文件读取方法没什么差异,实际代码如下。


<head>
<link rel="stylesheet" href="style.css" media="screen and (max-width:480px)">
/**
 中略
**/
</head>
media=” ”的地方,在screen后面还写了什么。
这里就是媒体查询。其意思是“画面宽度小于480px加载style.css”
也就是说,超过指定数值(例子中为宽480px)则不加载该css的意思。
但是如果不在这个范围内不加载任何css的话也不是很科学。


所以一般媒体查询会写多个代码。


<link rel="stylesheet" href="small.css" media="screen and (max-width:480px)">/* 画面宽度小于或等于480px,加载这个文件。*/
<link rel="stylesheet" href="medium.css" media="screen and (min-width:480px) and (max-width:1024px)"> /* 画面宽度480px~1024px区间内加载这个文件 */
<link rel="stylesheet" href="wide.css" media="screen and (min-width:1024px)">/* 画面大于或等于1024px,加载这个文件 */
如上述代码,可以通过指定分歧点来适用不同的css文件。
这个分歧点被称之为“断点”。
虽然断点可以设置非常多,但是设置的越多越难维护,现在一般的网站主要区分智能手机、平板、PC这几大类终端。


通过样式表来指定的方式


和前面通过断点加载不同样式表不同,这个方法是直接写在CSS样式表文件中。


/*
@media以外的地方为所有尺寸适用。
*/
p {
 color:red;
}
@media screen and (min-width:480px) { 
    /* 画面宽度大于等于480px,读取这里的样式 */
p { color:#ededed;}
}
@media screen and (min-width:768px) and ( max-width:1024px) {
    /* 画面宽度从768px到1024px读取这里的样式 */
p {}
}
@media screen and (min-width:1024px) {
    /* 画面尺寸大于1024px读取这里的样式 */
 
}


以下代码是区分iPhone、iPad、PC的基本断点。
想挑战响应式布局的话可以用来当作参考。

/* iPhone 竖屏 */
 
@media screen and (min-width:480px) { 
    /* for iPhone Landscape (iPhone 横) */
 
}
@media screen and (min-width:768px) and ( max-width:1024px) {
    /* for iPad  */
 
}
@media screen and (min-width:1024px) {
    /* for PC */
 
}
媒体查询可以指定的属性


前面主要介绍的是以窗口宽度为参数进行切换,除了这以外还有许多方法,这里例举常用的。

根据终端朝向判断

//竖屏的情况下
@media screen and (orientation:portrait){
  p {font-size: 1em; }  
}
//横屏的情况下
@media screen and (orientation:landscape){
  p {font-size: 1.2em; }  
}
根据设备的朝向可以使用“orientation”。
portrait为竖屏,landscape为横屏。可以通过朝向改变CSS。


根据像素密度判断


/* 视网膜屏的情况下适用 */
@media screen and (-webkit-min-device-pixel-ratio:2){
  p {font-size: 1.2em; }  
}
这个方法是比较老旧的方法,是可以通过设备的像素密度来判断。
现在比较常用的如下。



@media screen and (min-resolution: 2dppx)
或者



@media screen and (min-resolution: 2dppx)
指定设备的像素密度。分辨率可以用dp或dpcm来表示。






donate.png


telegram banner (1).png