Safari Web Content Guide – 自定义样式表

发表于 & 归档在 HTML, Web.

定制样式表

配置视口是优化iPhone OS下网页最重要的途径,但样式表能提供更多的优化手段。举个例子,使用iOS CSS扩展可以控制文字大小和元素的高亮,如果你使用条件CSS,可以不影响网页在其他浏览器下的显示效果。

查阅 “Optimizing Web Content” 了解如何使用条件CSS, “CSS Basics” 学习如何向HTML中添加CSS,参阅Safari CSS Reference 获取完整的Safari所支持的 CSS 属性列表

javascript中的比较操作符与类型转换

发表于 & 归档在 Web.

JavaScript中的比较操作符Equality(==)和Identity(===),以及类型间的转换是让人头疼的问题,虽然很多情况下都不需要,但多了解些,备特殊之需:

一道有名的javascript题目,其中有一处判断语句如下:

[javascript]alert([] == ![])[/javascript]

简单解答

1、”![]”结果是什么?

[]转换成boolean,按ToBoolean规则,object转换成boolean,返回true,然后取反,所以“![]”的结果是false

2、”[] == ![]”结果是什么?

看等号的左右两边,一个类型是object,一个是boolean,按不同类型对象间比较的规则:

[]” 转化成number ,结果是0

false,转换成number,结果是0

所以[] == ![] 结果为true,问题的关键是object和boolean比较,先转换成number(ToNumber())然后比较。

3、”[] == ![]”始终为真吗?

答案是否定,上面的结论是默认的情况,如果重写Array.prototype.valueOf方法,定制array转换成 number的过程,可以得到不同的结果,如:

[javascript]
Array.prototype.valueOf = function(){
return 1;
}
//结果是false
alert([] == ![]);
[/javascript]

Safari Web Content Guide-创建兼容的Web内容

发表于 & 归档在 Web.

原始地址:http://developer.apple.com/library/safari/#documentation/appleapplications/reference/safariwebcontent/CreatingContentforSafarioniPhone/CreatingContentforSafarioniPhone.html#//apple_ref/doc/uid/TP40006482-SW3

Safari的文档看过让人受益匪浅,比如网页中添加doctype信息,不要总是使用 user agent 判断浏览器

创建兼容的Web内容

本章介绍兼容桌面版和iPhone版本safari的一些好的做法,这些准则简单的改进了系统在各个平台上的可靠性、性能、呈现效果和用户体验,如果你的目标是iPhone OS,第一步是让你的web内容在桌面版本中能正常工作,如果你的目标是桌面版本,通过很小的修改就可以使之在iPhone OS上很好的呈现。

举个例子,你需要注意iPhone OS上Web内容的布局和功能局限,如果你使用条件CSS(参考章节: “Optimizing Web Content,” ),你的网页可以在iPhone OS上最佳化,同时其他浏览器也可以正常显示,阅读余下的章节学习如果使网页内容在safari下最佳显示。

iPhone OS 注意:当你设计网页,首先要了解iPhone OS下的Safari 网页如何渲染,用户如何通过触摸手势进行缩放,平移和双击交互。阅读 iPhone Human Interface Guidelines for Web Applications 了解iPhone OS平台下的使用习惯,技巧和界面交互设计。

Safari Web Content Guide – 介绍

发表于 & 归档在 Web.

介绍

Safari运行在多种操作系统和设备上,所有的Safari版本-包括桌面版和iPhone OS版-都是用相同的WebKid内核,此外为桌面版编写的网页内容无需修改就可以在iPhone OS上显示,存在某些差异,但基本上是兼容的,接着你可以为iPhone OS定制你的网页,以适合用户访问,如确保你的网页能在Wi-Fi,3G和EDGE网络下使用,正确的渲染和缩放,使用iPhone OS支持的媒体,对于其他设备如iPad也只需少量的修改,最后你就可以创建兼容各个平台,如同本地程序效果的Web应用了。

桌面版本的Safari支持Mac OS X和Windows,是全功能的浏览器,支持行业标准,并包含很多WebKit扩展,此外还包含开发工具,用于分析测试,调试网站和Web应用程序

iPhone OS版本的Safari,是用于iPhone, iPod touch, iPad的浏览器程序,同样是全功能的浏览器,运行在高分辨率屏幕的手持设备上,是特别用于支持触摸输入,多点触控交互的Safari版本,同时他支持横向和纵向渲染网页,还包含一些内置功能,如:PDF预览,视频播放,以及通过链接拨打电话,发送邮件,打开地图和YouTube程序的功能。

Firefox上的两个SVG Bug

发表于 & 归档在 HTML, Web.

SVG Use 标签bug
一个是use类型引用image第一次不显示的问题,究其根源是image load后,不会派发事件告诉use节点刷新,这个问题困扰我们很久,后来给firefox提交了 bug(https://bugzilla.mozilla.org/show_bug.cgi?id=575210),

问题表现是,第一打开图片不显示,刷新一次就可以了

firefox很快回复了bug,与bug548795相同,而Bug 548795 depends on bug 558663