关于响应式需要注意的地方

最近两周都停留在练习响应式项目上面,尽管响应式说过来说过去,需要注意的也就是那么几点,但是在写代码的过程中,还是会出现各种各样的问题。响应式因为要适应各种屏幕的大小,所以宽度是绝对不能定死的。在写代码的过程中,最明显的一个问题就是,我使用了padding来定义一个搜索框,在缩放屏幕的时候就发现右边的搜索按钮会被挤下去。不管怎么采用@media来定义都没有用。后来通过box-sizing:border-box解决了这个问题。

box-sizing:border-box==========》假如您需要并排放置两个带边框的框,可通过将 box-sizing 设置为 "border-box"。这可令浏览器呈现出带有指定宽度和高度的框,并把边框和内边距放入框中。

 

第二个问题就是移动优先还是台式桌面优先?就拿刚刚做的蚂蚁项目来说,给我们的是手机的页面,但是我做的是台式桌面的页面,就把内容跟内容的距离拉的很大,就感觉特别的丑。其实严格来说,项目从小屏幕入手过渡到大屏幕(移动优先),还是从大屏幕入手过渡到小屏幕(台式桌面优先)区别不大。但是,从移动端着手可以给你带来一些额外的限制,帮助你进行决策。通常情况下大家会从两方面同时着手。

 

第三个问题就是百分比的使用。还是很习惯于定死,采用px的做法。这种做法其实存在很大的问题。你的设计对象可能是台式桌面,也可能是移动端屏幕或者介于两者之间的任意屏幕类型。像素密度也会彼此不同,所以我们需要使用灵活可变,并且能够适应各种情况的单位。那么在这种情况下,百分比等相对单位就派上用场了。使用百分比时,我们说宽度50%就是表示宽度占屏幕大小(或者叫视区,也就是指所打开浏览器窗口的大小)的一半。

 

第四个问题就是最大值和最小值。有时候内容占满整个屏幕宽度(例如在移动设备上)是好事,但如果相同的内容在电视屏幕上也撑得满满的,貌似就不太合理了。这就是为什么要有最大/最小值。例如,如果宽度为100%,最大宽度1000px,那么内容就会以不超过1000px的宽度填充屏幕。

 

最后就是在嵌套对象上,还记得相对位置吗?如果一大堆要素彼此都紧密联系,那么必将难以控制。因此,将要素放置到容器中就会让它们变得更加好理解,并且简洁明快。这种情况就需要用到像素之类的静态单位了。静态单位对于logo和按钮等不需要扩展的内容来说非常有用。在这种小的地方可以采用PX,但是在定义宽度这种大的定位上面,还是要采用百分比。

posted @ 2015-12-22 13:06  骑着蚂蚁砍大象  阅读(246)  评论(0编辑  收藏  举报