深圳易捷网络科技注册咨询网-jiujiuya.com.cn 返回首页

如何打造一个优秀的响应式网站

信息来源:深圳市易捷网络科技有限公司
信息发布时间:2024/12/23
1.ie9以下(不包括ie9)采用ie条件注释,为ie8以及一下单独开一个样式文件
<!--[ifltIE9]>
<linkhref="lt9.css"rel="stylesheet"type="text/css">
<![endif]-->
2.一个模块的mq样式整体放在这个模块的样式的之后,符合层叠逻辑,也同时以免被层叠。
3.祈求在一个相应点上同时做变化几乎是不可能的,因为版式中间的变化,无论是视觉还是具体的编码人员不可能掌握所有细节。
4.流体布局很关键,%视父级为参照物,这一点虽然很多人都知道,但是实际做的时候却最容易被忽略。
5.清除浮动也很重要,切记。
6.如果你希望边框、边距(内、外)也在100%的范围内,直接设置width:auto就好了,不要给予希望在新的css3属性上,也不要寄希望在-webkit上,-webkit-很容易就会变成下一个ie6了。
7.合理的嵌套更加健壮,用一个包装元素来替代设置当前元素margin或者padding。举例,假如有A和B两个元素,width是40%,maring-right是10%,这样很容易在搜索浏览器的时候篡位,所以用一个包装元素C去分别包裹A和B,然给给C设置50%,A和B分别设置为80%。这样就是合理且健壮的嵌套了。
8.两行两列这种设计,由于流体布局和字数的不同,所以为每一行添加一个包装元素,更加健壮。也就是说,先做两行,再在每一行里做两列。
9.不要奢望在在每一个像素的宽度上不会出现超出预期的表现,因为没有任何人知道页面在每一个像素宽度时候的表现的样子,页面越负责可预期的就越不准确。所以mq可能真的是“非预期数值”(预期数值指代在设计和实现之前约定的响应点)
10.相同区间的mq和mq会层叠,全局的样式也会和mq中的样式层叠,所以属性尽量不要写成缩写。以减少忘记的风险。
11.图片的自适应处理不容易,特别是有边框的,如果正常条件(没有利用mq来约束)下设置了宽和高,在另外一个mq下,仅仅设置一个属性是不行的,还是那句话,mq不是二选一(除非是两个不同的mq区间),而是层叠!!
12.如果水平列表的两端的元素两端对齐,以四个元素为例,那么除了前三个预留左边距,最后一个为零;或者第一个右边据为0;后三个有右边距以外。可以采用第一个左侧有,最后一个右侧有,中间两个左右偏移边距来做,短的一面为边距除以空白数,比如4个列表项,边距为40,则40除以3。好处么?就是可以保证每一个外包装为通栏的25%。
13.四个25%,两个50%没关系,但是50%25%25%就可能会掉下去最后一个,所以24.99,22.49有时还会相差1~2像素。
14.如果版式变化不大,那么从大到小的写mq,不必写一个区间,只写最大值即可,这样一层一层的继承,小尺寸继承大尺寸,另外,不用过分担心选择器本身权重的问题,mq会提高其优先级。
15.像导航和版权这种在pc、pad、phone截然不同的版式。mq,就写区间。这样在区间外就等于这些dom毫无样式,这样就不比担心由继承引发的覆盖、优先级、重写以及未知问题。减少了属性的重写,提高了效率、降低了修改成本。其实就是等于一个dom,为不同的设备写不同的样式,这些样式之间不继承。
16.如果你希望几个元素是相对位置不变的话,请将他们包裹,通过这个包裹元素使他们整体与其他元素或元素组做排版,所以一个健壮的响应式离不开这些看似“冗余”的包裹元素。但还是以最少的可实现目标的dom层级为目标。
17.关于背景图,以中心为原点进行“裁剪”是理智的,已某一侧为原点看起来都有点怪。另外可以使用background-size某个值为auto,另外一个使用%
18.大图片请写在一个mq区间内,不要只写最大值,这样会搞定按需加载的问题。
19.banner样式实践
@media(min-width:1110px){
.banner{height:684px;background:url(img/banner1980.jpg)centercenterno-repeat;background-size:auto100%;}
}/*高度一直填充,两侧裁剪,这种体验先看比较好*/
/*以下不同目标分辨率载入不同的图片,保证k数最佳,裁剪体验应该一致*/
@media(min-width:769px)and(max-wdth:1110px){
.banner{height:383px;background:url(img/banner1110.jpg)centercenter;}
}
@media(min-width:569px)and(max-width:768px){
.banner{height:265px;background:url(img/banner768.jpg)centercenter;}
}
@media(min-width:415px)and(max-width:568px){
.banner{height:196px;background:url(img/banner568.jpg)centercenter;}
}
@media(min-width:321px)and(max-width:414px){
.banner{height:143px;background:url(img/banner414.jpg)centercenter;}
}
@media(max-width:320px){
.banner{height:111px;background:url(img/banner320.jpg)centercenter;}
}
20.logo如果是在banner的背景图上镂空,这样是不推荐的。在缩小浏览器窗口宽度的时候,给人以很明显很明显的视觉差,感觉页面极其不健壮(至少我的感觉是这样),似乎有随时要散的感觉。文字也有这感觉,特别是有大量文字的时候。所以你会发现很多响应式好的网站,他的导航的底色都是纯色。logo和导航都不镂空在一张背景图上。当然也有少数在的,比如adobe。
21.接20,一般banner图片几乎是满屏的可能高达1980px;而一般如果是居中的话,我们把导航和logo以及一些小功能,比如登录、搜索控制在1200px最大宽度,当页面大于这个最大宽度的时候,这个区域就像钉在了背景图上,不会导致有两个图层的感觉。所以当页面宽度马上等于最大宽度的时候,我们在利用mq重新写定义下一这个区域的最大宽度,当然是该小一点,这样就解决了20出现的那个问题。
22.png8的问题,ie6下就用纯色做底吧。我最理想的想法是,当用ie6访问所有公司web产品的时候,给用户一个页面,先登录QQ帐号,然后下载最新的QQ浏览器,然后发这个用户10个Q币。然后浏览器界就清静了。
23.接21,当前mq中的这个区域的最大宽度等于下一个(更小的一个尺寸)mq的尺寸,这样就用户的钉在了背景图的上面了。
24.对于相同的一些元素,某一个有特殊的样式,优先使用nth-of-type选择器。在测试ie8以及一下的时候,再为这个特殊的dom添加一个class之类,然后再在那个ie8以及一下的样式表中书写复制响应的规则。
25.body下有一个包裹元素,作为整体弹性的参照,为ie6、ie7单独写一个宽度,为什么是1000px,由于很难获得使用ie6的用户的分辨率,或者说获取了之后可能因为数据繁多不好决策,所以简单粗暴,认为使用ie6的都是低端设备用户,是小显示器用户,是1024*768分辨率;至于ie7,设置了4个25%的浮动,在缩小浏览器的过程中都能时不时的掉下去一个,对于小数点的像素就自动向上补全,太悲哀了。所以如下:
regularcssfile
.layout{width:100%;max-width:1980px;min-width:320px;*zoom:1;margin:0auto;}
lt9cssfile
.layout{*width:1000px;min-width:1000px;}/*ie8的最小宽度为1000px,ie76只有1000px*/
26.对于一定要百分之百通栏的模块,比如,带有背景色的版权,或者banner,那么可以在lt9的文件夹里为ie76写一个不是只有1000px,而是可以100%的样式,但是切记这里只要有一列,否则就又产生了25中提到的问题,也许,你可以这么写:
lt9cssfile
.layout{*width:1000px;min-width:1000px;}/*ie8的最小宽度为1000px,ie76只有1000px*/
.one-percent{width:100%;}/*新增的,一定要在layout的后面,否则对于ie67不生效*/
htmldom
<divclass="layoutone-percent">
<!--code-->
</div>
所以我建议,把banner主体部分版权三者用三个layout包裹,这样便于对ie6ie7ie8做样式。
27.经过长达半年的持续统计,1366px用户最多,根据栅格化,n=24为基准,得出W=(A*n)-i,所以如果要设置最大宽度则设置为1310px;a=45px,i=10px;不过由于与门户和电商等网站的排版不同且主要为了弹性版式,所以这里最大宽度是我们所需要的,至于45px和10px,以后有固定版式的话可以使用。
28.响应点:1366px1200px1110px768px568px414px320px;768以下的很好理解也方便约束,PC侧的响应点是较难控制的,所以前面三个值基本都是按照版式来操作的。原因参见3。
29.有的人说写响应式从小往大写,意思是说先写手机端,然后写PC端,大致的原因是从大往小写的话,手机就要层叠和重写很多样式,可能会影响性能。理论上,我是赞成的,实际上我并没有测试过到底性能有多么影响。但是单单从布局的角度上讲,从设计的角度上讲,至少我的逻辑是从大往小写,因为小的基本都是在大的基础上做删减和布局的变化,所以写的时候逻辑比较顺畅。不过无论从大到小,还是从小到大,自己顺手就好。一般视觉都会先设计PC的,然后考虑mobile是什么样的,这一点也使得我是从大到小的去写。
30.之前黄老师问我,认为响应式的难点是在设计上还是在技术上,我当时说是技术上没什么,关键是版式的变化和设计的体验。现在想想。版式变化固然是难点,但是技术手段也很重要,在这方面的深度和方式的选择要比版式上的选择复杂的多。
31.响应式三大技术:流体、mq、弹性图片。

相关行业资讯

1、SEO优化对企业网站越来越重要的原因是什么?
2、网站结构须与优化相结合
3、怎样做好长尾关键词
4、提高网站关键词排名这些步骤很是重要
5、网页设计师应该知道的10个SEO规则
6、在网站建设中哪些因素会影响效果
7、网站优化举行大型活动怎么做?
8、企业网站设计必知的小常识
9、搜索引擎算法分析之百度三大算法概述
10、收录量和索引量之间有什么联系
11、推广优化观点碰撞:网站内容到底需不需要每天更新
12、浅谈企业手机网站如何做好内容建设
13、搜索体验、用户体验,网站应以哪个为主?
14、网站建设技术方面需要注意的几个问题
15、网站运营网站策划人员需具备的8种思想
16、网站建设浅谈选择推广的关键词技巧
17、高效布置外链的方法
18、企业如何制作打造一个高质量营销网站
19、网站设计如何才能个性化?
20、不发外链能做好网络推广吗
21、为什么你的网站没有受到搜索引擎的喜爱
22、和营销型网站有关的因素
23、企业网站优化之网站被K怎么办
24、企业要做用户喜闻乐见的网站
25、慎用甚至不要用Meta Keywords
26、 哪些因素会影响到对网站的优化进程?
27、网站排名不好的原因究竟出在哪里
28、看百度的12个优化手段,跟百度学推广优化
29、如何设定seo目标
30、在网站建设过程中如何做好网站的质量
31、微博淘宝化专业类网站发展契机时代到来
32、网站设计的发展趋势
33、推广是通过哪些渠道完成的
34、做网站建设应该注意的重点是什么
35、网站动态网页的设计要注意什么
36、如何简化网站内复杂的操作
37、从质疑经典推广优化技巧法则而增强实战的经验
38、企业为什么要进行商城网站建设
39、网站关键词排名提升技巧
40、刷网站流量对网站有没有影响
41、对网站的URL优化建议
42、网站的安全检查不可以忽视
43、网站建设的文章为什么收录了又删除了?
44、seo优化具体有哪些重点需要掌握!
45、为何市场上建站公司的报价高低不等
46、关于企业网站建设的三大思考
47、网站设计中哪些地方有可能侵权
48、官网为什么要做响应式
49、网站建设分析推广优化的目标
50、制作网站要妥善放置每一个导航

相关视频推荐

自动化行业网站制作焊锡机/点胶机/螺丝机网站
企业网站制作新模式全部仅需800元/年
如何提高企叫网站打开速度
公司网站到期了该怎小续费
企业为什么必须要做一网站
企业网站的导航栏一般要规划哪些栏目
国际物流FBA物流网站建设深圳易捷网站公司公司
银制品金银器网站建设深圳易捷网站公司
包装印刷行业网站设计
膜结构公司网站设计
工商财务公司网站设计
购买一个域名需要多少钱
企业网站建设云虚拟主机需要多少钱
财务公言的网站怎么做才能显示在搜索引擎的首页
网站建设一站式服务
深圳网站建设公司网站排行榜
深圳市易捷网络科技有限公司版权所有    粤ICP备2022153140号