解决IE7下页面元素因浏览器渲染(重绘)Bug而不显示的问题

稍微有点经验的前端应该知道IE7-有一个经典的渲染问题,表现在对display为inline-block的元素的不友好上。我们也知道只要重新给这个元素单独宣布一条display:inline,就能解决问题。但今天我要说的不是这个,最近新完成的一个网站,在IE7下浏览,就有包括导航和热图这样的大块元素没有正常显示:
iexuanran

经过检查,发现这些没有正常显示的元素,都有一个共同的CSS属性- position:relative,导致这些元素在IE7中没有被正常的渲染到,就没有显示出来。百度了一下,这个问题归类为-IE重绘问题。当然并非所有position为relative的元素都不能在IE7中正常显示,实际情况要比我这里所指的复杂的多。由于布局的硬性需要(比如滚动图片的移动效果),使我没有办法不用relative属性,所以要解决在IE7中的渲染问题,就必须另外想办法。 查看详细 »

WordPress英文版切换为中文版步骤,附4.01简体中文语言包下载

一直都习惯用英文版的WordPress,原因是一直都去英文官网找插件和看文档,而且官网的英文原版也更新得较快,比如最近官网的英文版已经更新到4.1版了,而中文版目前还停留在4.01。不过有时候也会需要用中文版,比如要开放后台给不习惯英文界面的人…好在WordPress语言切换还是比较容易的。 查看详细 »

浅谈响应式瀑布流的实现方式

瀑布流主要应用在图片展示页面上。如果有一大批图片需要展示,原始图片尺寸不一致,又希望每张图片都能不剪裁,完整显示,那么就要给图片规定一个宽度,解放它们的高度。利用网页高度不限这个特性,充分利用页面的空间,尽可能的展示多的图片。瀑布流的实现方法挺多,但能做到响应式列数变化,自由布局的并不多。这次自己开发了一个作品集页面,正好研究一下响应式瀑布流的实现方法。

响应式瀑布流布局的思路

响应式瀑布流需要解决的问题:

1. 响应式多列:960px宽以上呈4列,750-960呈3列,400-750呈2列,400宽以下变成1列;
2. 由于需要做响应式,那么每块的宽度就不固定,导致高度更加不可能固定。后端输出的时候,图片(块)的高度本来就是未知的,要用JS实时取到它们的高度,以便调整布局。
3. 异步加载:页面拖到最低端的时候加载更多,这个很常见。 查看详细 »

WordPress网站在Azure环境下无法使用SESSION?

今天又在刚从Linux搬到Windows Azure的WordPress网站们身上发现一个毛病,那就是自己写的SESSION都不起作用了。这直接导致了网站的登录功能没法使用。能支持PHP,我就不信Azure会连SESSION这种最基本的东西都不支持。搜索了一下相关问题,有的说要设置cache目录;还有说要修改web.config文件,加一堆XML节点…其实都在绕弯路,最后被我找到一个WP插件(好吧,我承认太没技术含量了Orz),名叫Simple Session Support。安装了一下这个插件问题就得到了解决,网站能正常登录,并且把用户信息读取到SESSION中了。

打开Simple Session Support插件的安装目录,原来只有一个php文件,而且很小。它提供了两个建立SESSION的函数,但都没有加到钩子里去。反而倒是有一个初始启动SESSION的小函数吸引了我的注意。原来在Azure下需要执行一下session_start()命令来才能开始使用SESSION。 查看详细 »

在Windows Azure/IIS7环境下部署svg/woff/woff2字体,添加MIME类型

最近公司的几个WordPress网站从AWS搬家到Windows Azure环境下,又折腾了好一阵子。今天新鲜出炉一个新的问题,发现网站上的woff字体又报404了。在确认文件已经上传到正确路径下后,再回想一下之前碰到的IIS环境下找不到字体文件的问题,感觉应该又是没有给字体文件添加MIME类型的原因。Windows Azure并非虚拟主机,所以也不会给我一个IIS让我配置,只能想其他办法。 查看详细 »

英文单词断行问题:CSS中word-break、word-wrap以及hyphens的兼容性和区别

CSS中一提到单词断行,最先映入脑海的肯定是word-break和word-wrap这两条属性。但对于这两条属性到底有什么区别,兼容性如何,我一直都概念模糊。今天抽空把它们以及CSS3中新加入的断行属性之间的区别和作用理理清楚,做一下笔记。

在英文段落中有时会碰到一些很长的单词,这些单词的长度超出容器宽度。在默认的页面文档中,如果单词长度超出了单行,会被自动移到下一行中,图中puzzling!就被自动换行了;而如果单词本身的长度已经超出容器宽度,常规的文档对此就没有约束力了,图中dddddd…这个单词就这么溢出了 查看详细 »

WordPress网站搬家、数据库升级心得

这两天忙着给公司的一批WordPress网站搬家,碰到了不少以前没遇到过的麻烦,总结一下解决问题的经验。WordPress网站搬家除了要把wp-content的文件转移之外,如果碰到数据库设置的变更,就比较麻烦了。在旧空间上,我们的WP是每个站独享一个数据库;在新的主机上由于权限的限制,好几个网站都必须共享一个数据库。解决思路是要在新的空间里给每个WP网站设置不同的prefix,思路很简单,但实际操作的时候还是碰到了不少问题。 查看详细 »

在IIS服务器上部署svg/woff/woff2字体

标题起的比较诡异,部署网站的字体和服务器IIS有什么关系?如果你的职责只限于一名前端开发,那么你可能很“幸福”地与这些问题擦肩而过,浑然不觉。可是本人一直都是孤军奋战,连开发环境都要自己搭建,这次又踩了新的坑,发现网站所用的woff、svg等字体压根就没被页面加载。反复排摸都不得其解,用浏览器访问服务器上的这些字体url,全都报404错误,只有ttf的字体能被访问到…

事情还得起源于Google被墙这事,在几个月前我改用了360提供的字体库,一直也运行稳定。今天发现360的字体库失效了,网站字体又变回系统字体,而且一直在尝试加载360的字体库,页面变得很慢,和当初加载不到Google字库的时候一个德性…看来没有永远靠得住的服务啊,要想用字体,还得靠自己… 查看详细 »