采用 Webkit 核心的浏览器主要有苹果的 Safari 和 Google 的 Chrome,Webkit 核心有着良好的性能,并且在某些细节对用户非常友好,页面输入框(input 标签)聚焦高亮和文本框(textarea 标签)缩放功能就是其中的两个对用户非常友好的设计。可是这两个设计在对用户友好的同时,却会对页面设计产生影响。
CSS 屏蔽 Webkit 输入框高亮
下面是默认情况下,Webkit 浏览器里输入框获取焦点时的情况。

我们可以发现 Webkit 对输入框的高亮已经使页面呈现出的样式和设计样式不同了。如果你的网站已经对输入框获取焦点时定义了特殊的样式,不妨把 Webkit 这个多此一举的功能屏蔽掉。加上下面的 CSS 就可以轻松地把高亮去掉。
如果我们希望把一个网站的更新实时发布到令一个网站上,最好的方法是通过 RSS 进行转载。如果只是需要简单的对更新的条目做个提示的话,使用 JavaScript 是最可行的方法。但是通过 JavaScript 解析一个 XML 文档十分麻烦。幸好 Yahoo Pipes 为我们提供了非常好的 RSS to JSON 功能,我们可以先把 RSS 转换成 JSON 再用 JavaScript 进行解析,这样比直接解析 XML 简单得多!
把 RSS 转换成 JSON

首先登录 http://pipes.yahoo.com ,新建一个 Pipe ( Creat a Pipe ) 。然后在左边的工具里选择 Sources > Fetch Feed ,在输入框里输入一个 RSS 地址。再用线把 Fetch Feed 和 Pipe Output 两个框框连起来(如右图),保存这个 Pipe,然后点击顶部的 Run Pipe… 。点击 Publish 发布这个 Pipe ,然后记下 Get as JSON 的 URL。简单几步就已经把一个 RSS 转换成 JSON 了,而且这个 JSON 会根据 RSS 的更新自动更新。
有时我们需要令一个宽度固定的容器里的子框架居中(例如一个 Div ,或者其他 block 级元素),如果子框架只有一个的话,我们只需要为子框架加上 CSS 属性 margin: auto 就可以了。
但如果我们要让多个子框架居中,并且等分父框架剩余的空间的话,我们对所有子框架使用 CSS box-align: center 来实现这种效果。
可是目前还有相当一部分主流浏览器不支持 box-align 属性,那么我们应该如何编写 CSS,使这种效果能兼容大部分的浏览器呢?
通常的方法
为了使多个 block 级元素排列在同一行里,我们习惯使用 float 属性使子框架浮动,然后利用 margin 属性让每一个子框架之间都留出一些空白的间距。可是这样做会触发经典的 IE6 双倍 margin BUG,这样反而要投入额外的时间去调试 IE6 的 Hack。
虽然我们还可以通过 display: inline 来避开 IE6 的 BUG,但我们仍然需要调整这些子框架间的间距,防止最后一个自框架被挤到下一行。
CSS3 标准里引入了一些新的盒子模型参数,在 CSS2 的基础上,我们将能更灵活地调整页面上各个容器的大小和位置。详细的说明可以看这个文档。
通过学习和测试,我发现这种新的盒子模型布局对建立自适应布局的页面带来很大的好处。在这篇文章中,我的所有例子都基于以下 HTML代码:
1
2
3
4
5
| <body>
<div id="box1">1</div>
<div id="box2">2</div>
<div id="box3">3</div>
</body> |
容器的排列
在通常的情况下,页面上所有容器的顺序都按照载入的顺序排列。而使用 CSS3 提供的功能后,我们可以在不改变 HTML 结构的前提下随意改变容器显示的位置,这样不但给排版带来极大的方便,我们也可以利用这些功能进行流量整形。
在网页里使用圆角效果是使网页更加美观的一个简单而有效的方法,可是由于 IE 和一些老式浏览器的存在,如何使页面在各个浏览器里的效果一致一直困扰这网页设计人员。最近我在制作主题时面对一个艰难的抉择,因为我要在主题里使用大量的圆角,我应该如何去协调圆角在不同浏览器里的效果?下面我将列举一些产生圆角的方法,并阐述一下它们的优点和缺点,各位观众在以后遇到这种问题的时候可以根据自己的时间或者技术需要进行取舍。
CSS 圆角
关于 CSS 圆角在《再谈 CSS 圆角》一文里已经有详细的阐述。但纯 CSS 的圆角一些老式浏览器根本不支持。使用框架叠加的话不但会使页面结构变得非常复杂,而且大量的多余框架也会给一些后期开发带来困难。而使用圆角的图片作为背景则很难在一些灵活多变的页面里进行应用。因此 CSS 圆角目前只能在一些框架(主要是宽度)比较固定的页面里,通过图片的方式来实现。
Microsoft Expression Web 3 SuperPreview是微软公司为WEB开发人员推出的一个用来测试网站效果的软件,免费版可以用来测试IE6+的页面效果,并且可试用60天。这对一般的网页设计人员来说已经足够了。特别在升级到Win7以后,老牌测试工具IETester经常报错,令人非常郁闷。微软自家的Web 3 SuperPreview就不会犯这种低级错误了,而且它的功能比IETester强大多了。我以我的日记博客(http://shouy.in)为测试对象演示一下几个好用的功能。
CSS已经成为网页前段设计一个非常重要的部分,由于写CSS时需要考虑的问题非常多,老手们创建新页面是通常会沿用以前的CSS框架。但是新手没有自己的框架,这篇文章可以给新手们一些启示。
1.简单的纯CSS Tooltip
通过这些代码,你可以做出简单的Tooltip。这是CSS代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| a:hover {
background:#ffffff; /*要兼容IE6的话必须添加背景色*/
text-decoration:none;
}
a.tooltip span {
display:none;
padding:2px 3px;
margin-left:8px;
width:130px;
}
a.tooltip:hover span{
display:inline;
position:absolute;
background:#ffffff;
border:1px solid #cccccc;
color:#6c6c6c;
} |
随着宽屏显示器的流行,越来越多的网站采用了动态宽度的设计,以求页面在宽屏显示器上保持美观(960px的网页在23寸的显示器上只有半个屏幕的宽度)。动态宽度的框架设计比较复杂,今天只说说和屏幕等宽的导航栏的设计。
等宽导航栏(我不知道这个名称合不合适,知道的朋友指点一下)的设计一般要遵守以下两个要素:
1.导航栏的背景和页面的最大宽度相等;
2.导航的内容的位置在页面主框架以内(导航的内容在主框架以外的话不好看,用户体验也不好)。
Google Analytics(谷歌分析)为我们提供了强大的网站统计功能,其中Custom Reports(自定义报告)功能更是为我们扩展统计功能提供了方便。在这里我们探讨一下通过自定义报告功能跟踪用户行为的方法。
Google Analytics的统计代码分为标准统计和异步统计两种,因此我们分开讨论。先看看两种基本的统计代码:
标准统计
1
2
3
4
5
6
7
8
9
| <script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try{
var pageTracker = _gat._getTracker("UA-xxxxxx-x");
pageTracker._trackPageview();
} catch(err) {}</script> |
随着Twitter、新浪微博、嘀咕等社会化微博客的流行,因为大多数微博客都有字数限制,因此互联网上大部分长长的网址在微博客上变得很不适用,一直以来被人冷落的网址缩短服务又火了起来。
大家可以看个例子,我上一篇文章的网址是http://blog.imbolo.com/the-trends-of-navigation-menus-design/,经过bit.ly提供的网址缩短后变成http://bit.ly/8TP4p0,少了多少个字符大家可以自己数数,由此也可见在必须字字珠玑的微博客上短网址是多么的重要。
Recent Comments