css响应式设计

首先明白一个需求:某网站在大屏幕上时布局如下:

屏幕>1024px

屏幕大小为768px到1024px时实现布局如下:

小于768px时实现如下布局:

实现这几种效果就是响应式布局了。说下实现方式使用css @media分为三种情况:

1.当 @media screen and (max-width:768px)时,及屏幕大小小于768时为一种css样式,

2.当 @media screen and (min-width:768px) and (max-width:1024px)时,及屏幕宽度在768和1024时为一种css样式,

3.当 @media screen and (min-width:1024px)时,屏幕宽度大于1024px时为另一种css样式,

其中有几个重要的地方注意:某些区域width用百分比确定的,例如最下边的每条记录宽度始终为100%,页面上边的几个块开始width为大概30%,后边屏幕宽度改变时为大概50%;不仅如此除了比较小的组件之外,基本都是用width百分比规定大小。

另外:如果屏幕变小时,我们所有地方的字体也要变小怎么办?--rem,em

1.rem的使用方式,在根元素html标签上设置font-size:100%(16px);那么其他地方使用rem,1rem相当于16px;那么当 @media screen and (min-width:1024px)时,屏幕宽度大于1024px时我们设置html标签font-size:20px;其他地方也会相应变大1rem = 20px,也是实现了响应式,看起来比较舒服;

2.em的使用方式,在当前标签元素设置font-size:16px,在当前标签使用em那么 1em = 16px,如果当前元素没设置font-size,那么1em大小为当前元素继承其他元素的font-size大小。

所以rem, em都为相对大小的单位,区别是参照物不同,我本人更倾向于使用rem。

总结:页面响应式布局实现可以通过css media + rem + 百分比宽度实现

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容