最近在开发官网, 本来是说好只是在PC端的展示的, 但我太天真了, 就信了, 后来果然又说要适配移动端, 于是又喜闻乐见地改来改去.
之前也没怎么做过PC端静态网页, 在不断与UI撕逼的过程中, 总结经验如下:
移动优先. 就算说好是PC端的静态页面, 也要以移动端布局优先, 再通过媒体查询来适配PC端(你自己想想, 坐地铁, 等电梯, 躺床上的时候, 你是想打开电脑还是想玩手机? 如果一个网页在手机里打开惨不忍睹, 你会不会想, 这什么垃圾网页?)
图片的文件夹最好叫
images
. 举个例子, ps切图是指定输出目录为src
, 则切出的图片一定会放在src
目录下的images
文件夹里的, 如果src
目录没有images
文件夹, ps就会新建一个. 因此, 如果src
目录下存放图片的文件夹不叫images
, 则你还要切完图后再移动图片, 比较麻烦.图片. png才可以无背景色即透明的, jpg不可以. 切图时, 去掉纹理层, 保留蒙版层(让图片颜色变灰淡), 这样切出来的图片体积最小, 在格式上, 导出的图片jpg比png更小. 导出的图片可以使用ImageOptim压缩一下
Safari是垃圾浏览器(哼哼, 虽然我用Mac, 但我还是要这样说. 我用Chrome, UI用Safari, 结果UI经常对我说, 你这网页有bug😂) 简单来说, 相比Chrome, Safari渲染页面的方式要”笨”一些.
video 最通用的格式为mp4, IE9+适用. 使用前可以用HandBrake先压缩一下, 如果缩放视频, 有个方法是先设置
position: absolute
, 然后再指定宽度或高度(只指定一个, 因为视频不允许变形的), 但因为Safari比较”笨”, 需要设置top
属性, 而设置了top
, 又可能造成溢出, 需要设置margin: auto
, 则最终代码如下:
1 | video { |
另外, video 设置
loop
循环播放时, Chrome控制台可以看到, Chrome不断地发送请求, 而别的浏览器却不会, 难道Chrome有bug? 不, 肯定是因为你设置了”开启控制台时禁用缓存选项”, 详情请看stackoverflow的问答