HTML & CSS 设计原则

露娜
• 阅读 521

设计原则 Design Principle

响应式设计 Responsive

响应式设计的意思是网页能够根据其显示在的屏幕的大小自动伸缩。

响应式设计使得对笔记本和手机用户更加友好。

分辨率的计算:宽度 高度,最常见的屏幕分辨率是 1920px 1080px。

响应式设计三大技术:

  1. Flexible grids 灵活网格:由列,gutter(列之间的间隔) 和 margin(内容和屏幕的左右边界的间隔) 组成。该技术不以像素为单位,而是以百分比为单位适应屏幕。
  2. Fluid images 流式图片:设置 max-width 值为 100% 可确保图片不超出父容器的范围;设置 height 属性为 auto 可以保持图片的原始宽高比。
  3. Media queries 媒体查询:是 CSS 的一部分,允许开发者指定长宽比(aspect ratio)和方向(orientation)来有条件地应用 CSS。

在响应式设计中,像素值通常被称为“断点(breakpoint)”。断点指的是网页的内容和布局会自适应并尽可能提供最好的用户体验。

断点可以在三种栅格下发挥作用:

  1. Fixed grid 固定栅格:由列和灵活的 margin 组成。其内容(列)大小是固定的,而 margin 则会根据屏幕的宽度自动伸缩。
  2. Fluid grid 流式栅格:由列,gutter 和 margin 组成。其内容(列)大小可变,会自动伸缩适应屏幕,gutter 是固定的。
  3. Hybird grid 混合栅格:结合了以上两种方式,有些应用会根据使用设备的不同有不同的 CSS 规则。

媒体查询 Media Query

媒体查询是 CSS3 中引入的一项新技术,它可以根据不同的视窗大小调整内容的布局。 视窗是指浏览器中,用户可见的网页内容。 视窗会随访问网站的设备不同而改变。

媒体查询由媒体类型组成,如果媒体类型与展示网页的设备类型匹配,则应用对应的样式。 在媒体查询中使用各种选择器和样式。

@media (max-height: 800px) {
  p {
    font-size: 10px;
  }
}

针对高分辨率屏幕应使用视网膜图片 Higher Resolution Display

像素密度就是区分不同显示设备的一个指标,它一般会以 PPI(Pixel Per Inch,即每英寸像素)或 DPI(每英寸点数)为计量单位。

让图像正确出现在高分辨率显示器(例如 MacBook Pro's “Revistina display”)上的最简单方式, 是定义它们的 widthheight 值为原始值的一半。

img {
  width: 100px;
  height: 100px;
}

使排版根据设备尺寸自如响应 Typography Responsive

除了使用 empx 设置文本大小,还可以用视窗单位来做响应式排版。 视窗单位和百分比都是相对单位,但它们是基于不同的参照物。 视窗单位是相对于设备的视窗尺寸(宽度或高度),百分比是相对于父级元素的大小。

四个不同的视窗单位分别是:

  • vw:如 10vw 的意思是视窗宽度的 10%。
  • vh:3vh 的意思是视窗高度的 3%。
  • vmin:70vmin 的意思是视窗的高度和宽度中较小一个的 70%。
  • vmax:100vmax 的意思是视窗的高度和宽度中较大一个的 100%。
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
皕杰报表(关于日期时间时分秒显示不出来)
在使用皕杰报表设计器时,数据据里面是日期型,但当你web预览时候,发现有日期时间类型的数据时分秒显示不出来,只有年月日能显示出来,时分秒显示为0:00:00。1.可以使用tochar解决,数据集用selecttochar(flowdate,"yyyyMMddHH:mm:ss")fromtablename2.也可以把数据库日期类型date改成timestamp
菜园前端 菜园前端
2年前
CSS布局方式-响应式布局
原文链接:什么是响应式布局?在不同屏幕分辨率下,能够以最佳的方式进行展示,元素的宽度尺寸以及展示方式可能会改变。通常使用@media多媒体查询来实现响应式布局。优点页面能够兼容不同分辨率的屏幕。缺点工作量大,UI需要设计多个平台的版本。场景一套代码兼容we
Stella981 Stella981
3年前
Javascript基础知识学习(三)
前言:javascript是一种轻量的、动态的脚本语言,我们为什么要使用javascript?对于一个网页的设计,.html用来放置网页的内容,.css则用来设计网页的样式和布局,那么.js它主要是使网页能够产生交互,意思就是能够通过代码动态的修改HTML、操作CSS、响应事件、获取用户计算机的相关信息等。javascript不是所有的浏览器
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
为什么mysql不推荐使用雪花ID作为主键
作者:毛辰飞背景在mysql中设计表的时候,mysql官方推荐不要使用uuid或者不连续不重复的雪花id(long形且唯一),而是推荐连续自增的主键id,官方的推荐是auto_increment,那么为什么不建议采用uuid,使用uuid究
铁扇公主 铁扇公主
1年前
专业强大的可视化网页设计工具Blocs最新激活版
Blocs是一款网页设计软件,适用于Mac电脑,专为非技术人员和初学者设计,使他们能够轻松地创建漂亮且功能强大的网页。Blocs的特点包括:用户友好的界面:提供了简单且直观的界面,使用户可以轻松地拖放组件、编辑文本和调整布局。响应式设计:支持响应式设计,可