<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nffish&#039;s Blog &#187; CSS</title>
	<atom:link href="http://nffish.com/archives/category/css/feed" rel="self" type="application/rss+xml" />
	<link>http://nffish.com</link>
	<description>好记性不如烂笔头</description>
	<lastBuildDate>Sun, 22 Jan 2012 04:45:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>后移动时代的 Web 设计</title>
		<link>http://nffish.com/archives/461</link>
		<comments>http://nffish.com/archives/461#comments</comments>
		<pubDate>Sat, 17 Jul 2010 05:37:43 +0000</pubDate>
		<dc:creator>Nffish</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://nffish.com/?p=461</guid>
		<description><![CDATA[还记得 Wap 吗，现在还有多少人使用 Wap？后移动时代，随着浏览器技术的进步，为移动设备设置特殊站点已经不再必要。作为 Web 设计师，如果你能遵循一些基本的设计与布局原则，你的站点将能被多数移动设备更轻松地访问。本文讲述的是后移动时代的 Web 设计原则。 移动浏览技术现状 当今最受欢迎的手机系统包括 Android，BlackBerry 与 iPhone。虽然这些手机系统中的浏览器都支持 HTML + CSS + JavaScript，但它们仍然存在某些局限。 Flash 现阶段，用手机访问...]]></description>
			<content:encoded><![CDATA[<p>还记得 Wap 吗，现在还有多少人使用 Wap？后移动时代，随着浏览器技术的进步，为移动设备设置特殊站点已经不再必要。作为 Web 设计师，如果你能遵循一些基本的设计与布局原则，你的站点将能被多数移动设备更轻松地访问。本文讲述的是后移动时代的 Web 设计原则。</p>
<p><img src="http://net.onextrapixel.com/wp-content/uploads/2010/06/designingformobile.jpg" alt="" width="580" height="400" /></p>
<h2><strong>移动浏览技术现状<br />
</strong></h2>
<p>当今最受欢迎的手机系统包括 Android，BlackBerry 与 iPhone。虽然这些手机系统中的浏览器都支持 HTML + CSS + JavaScript，但它们仍然存在某些局限。</p>
<p><strong>Flash</strong></p>
<p><img title="Flash" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/flash.jpg" alt="Flash" width="580" height="310" /></p>
<p>现阶段，用手机访问 Flash 站点，除了一个黑屏幕，什么都不会显示，而且手机也不会提示说无法加载 Flash，因此，Flash 站点应该通过浏览器探测技术，在不支持 Flash 的客户端上输出替代内容。尽管 Flash 在众多平台上都能输出漂亮的内容，但在手机上运行 Flash 就像在 Mac 上运行 Windows 一样，不过，<a href="http://www.pcworld.com/article/194465/adobe_announces_flash_for_android_beta_testing.html">业 界已经出现一些技术来解决这个问题</a> ，但不要指望太多。</p>
<p><strong>Silverlight</strong></p>
<p>Windows Mobile 7 将支持 Silverlight，那将是唯一一款支持该技术的移动浏览器。不过，既然微软已经向 <a href="http://news.cnet.com/8301-1001_3-10305822-92.html">HTML 5</a>敞开大门，因此，也不要指望微软在移动平台上会为 Silverlight 做多少努力，因此，底线是，不要在你的移动站点中过于依赖 Silverlight。</p>
<p><strong>JavaScript</strong></p>
<p><img title="Javascript" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/mobilejs.jpg" alt="Javascript" width="580" height="301" /></p>
<p>过去5年，移动平台对 JavaScript 的支持势不可挡，其体验已经接近桌面，但不能支撑过于复杂的功能，<a href="http://www.quirksmode.org/m/table.html">这里有一个关于这个问题的案例分析</a> 。至 于那些比较老的手机，虽然也支持 JavaScript，但多数都是默认关闭的。当你需要为移动设备编写 JavaScript 的时候，<a href="http://www.jslint.com/">需要对代码进行验 证和检查</a> ，以免用户的设备崩溃，另外记住，将 JavaScript 脚本放到页面底部，这样，不至于在页面还没加载前就崩溃。</p>
<p><strong>CSS 3<br />
</strong></p>
<p>移动平台对 CSS 的支持已经很久了，如今，大量基于 <a href="http://webkit.org/">Webkit 开源项目</a> 的手机开始支持 CSS 3，CSS3 拥有更好的视觉体验，支持降级使用，还能加速页面加载，你在使用 CSS3 的时候，只需要注意其中的某些属性在旧的手机上可以降级使用。</p>
<h2><strong>设计感与易用性之争<br />
</strong></h2>
<p>流行的 Web 技术并非都是你的最佳选择，你需要对使用的各种技术进行测试，事实证明，在移动浏览领域，诸如 Lightbox，视频，鼠标盘旋一类的技术存在问题，需要避开，我们将在这一节中对各种 Web 设计元素进行讲述。</p>
<p><img title="Design  Considerations and Usability Battles" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/design-considerations.jpg" alt="Design Considerations and Usability Battles" width="580" height="295" /></p>
<p><strong>为什么视频不能播放？<br />
</strong></p>
<p>前面提过，不同移动平台对 Flash 和 Silverlight 的支持很不一致。目前，像 <a href="http://vimeo.com/blog:268">Vimeo</a> 及 <a href="http://www.youtube.com/html5">YouTube’s</a> 一类的站点在移动设备上访问还存在各种问题，YouTube 比 Vimeo 略好一些，而内嵌视频支持目前则好像只限于 Google Android 平台。</p>
<p>移动平台的视频，是通过 HTML5 实现的，然而，到目前为止，<a href="http://arstechnica.com/open-source/news/2009/07/decoding-the-html-5-video-codec-debate.ars">HTML5 视频的许可问题仍不明朗</a> ，不过 Google 一直在这个问题上走在最前面，希望他们能最终使这个问题免于重蹈 DVD 解码器许可的覆辙。</p>
<p><strong>文字缩放<br />
</strong></p>
<p>希望你的文字最多使用的是相对位置而不是绝对位置，否则，Android 平台的浏览器会将你页面的文字扔到屏幕之外的某个地方。</p>
<p><strong>在小屏幕上的显示清晰度问题<br />
</strong></p>
<p>在手机的小屏幕上看网页，就像你隔着一个房间看电脑屏幕那样，结果是什么看不清晰，你需要将重要的页面元素加深对比度以便用户能看得清楚点。</p>
<p><strong>Lightbox 技术</strong></p>
<p><img title="Lightbox" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/lightbox.jpg" alt="Lightbox" width="580" height="454" /></p>
<p>Lightbox 是最受欢迎的 JavaScript 技术，也是最容易让手机用户抓狂的地方，在很多时候，手机屏幕上的 Lightbox 只显示一个角落，而大部分内容则被扔到屏幕外的某个地方。另外，在某些时候，Lightbox 还让手机的 Web 页面崩溃，导致任何东西都无法点用。这并不意味着你不能使用 Lightbox，诸如登陆框一类的地方还是可以使用（登陆框可以做得比较小一些 &#8211; 译者注），但不管怎样，最好同时提供一个传统的登录方式，以免 Lightbox 显示到屏幕之外。</p>
<p><strong>浏览器探测<br />
</strong></p>
<p>很多年前， Web 开发与设计者需要借助浏览器探测技术，为不同浏览器，或者不同版本的浏览器输出不同内容，随着 Web 标准的深入人心，为不同浏览器输出不同内容已经不可取。浏览器嗅探可以通过诸如 <a href="http://api.jquery.com/jQuery.support/">jQuery</a> 一类的 JavaScript 库轻松实现，还有一些可以嗅探 <a href="http://www.featureblend.com/javascript-flash-detection-library.html">flash</a> 支持情况的库可以使用，然而现实是，除非你有大量 Flash 应用，否则很少会用到这个，事实上，现在的很多移动浏览器在遇到不支持的内容时会悄然掠过，而不会像 IE6 那样弹一堆错误。</p>
<p><strong>鼠标盘旋</strong></p>
<p>很多站点的导航使用鼠标盘旋并下拉子菜单的方式，然而移动浏览器没有鼠标盘旋一说，虽然有的手机支持这一操作，但和桌面方式有很大的差异。应该避免 将重要的信息放到需要鼠标盘旋才能显示的状态。</p>
<p><strong>下拉菜单导航<br />
</strong></p>
<p><a href="http://www.sencha.com/"><img title="Sencha" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/sencha.jpg" alt="Sencha" width="580" height="454" /></a></p>
<p>下拉菜单需要鼠标盘旋才能打开，前面说过，在手机上，这无法实现，另外，下拉菜单的尺寸往往超过手机屏幕尺寸，即时用户打开了下拉菜单，也很有可能 无法完全访问。你应当始终在侧边栏保留子菜单，不管是针对手机站点还是桌面站点。</p>
<p><strong>缓慢的加载速度</strong></p>
<p>手机浏览器加载速度非常慢，你需要压缩自己的数据，甚至使用 CDN 加速网络。在 WordPress 一类的 CMS 中可以启用数据压缩，<a href="http://www.port80software.com/support/p80tools.asp">你可在在这个站点测试 你的数据是否经过了压缩</a> ，如果你使用静态设计的页面，可以使用 <a href="http://code.google.com/p/minify/">Minify</a> 对你设计的网页代码进行净化。</p>
<p><strong>加载进度提示<br />
</strong></p>
<p><img title="Loading" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/loading.jpg" alt="Loading" width="580" height="457" /></p>
<p>你应当使用加载进度图标，告诉用户现在正在加载，对于手机浏览器这种 Internet 连接不很稳定的情形尤其重要，在一些 Ajax 应用场合，如果不显示加载进度，用户会以为你的站点已经失去反应。</p>
<p><strong>记忆用户的数据<br />
</strong></p>
<p>手机用户打字很不方便，应该尽可能使用 Cookie 记忆用户的数据。</p>
<p><strong>侧边栏放在左边还是右边？</strong></p>
<p>应该是右边，因为手机屏幕很小，用户阅读你的网页的时候，如果左边显示侧边栏，他们要看真正的内容，就不得不左右滚动，放在右边，用户就可以直接向 下滚动看具体内容，需要看侧边栏的时候再左右滚动。</p>
<p><strong>小屏幕</strong></p>
<p>早期的 Web 设计师提起当年的 800&#215;600 屏幕就一肚子怨气，好在现在的桌面屏幕都足够大了，然后移动设备的屏幕比这个更小。你所能做的，尽可能不要把网站的 Header 或 Logo 做得太大。</p>
<h2><strong>移动站点适合你吗？<br />
</strong></h2>
<p>很多公司花费大量金钱部署专门的移动站点，事实上，这并不必要，如果你有个电子商务站点，而手机用户存在访问问题，这种情况，也许才值得专门部署一 个移动站点。</p>
<p><strong>单列布局<br />
</strong></p>
<p><img title="Single Column" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/single-column.jpg" alt="Single Column" width="580" height="382" /></p>
<p>要想让你的站点更好地支持移动浏览器，你或许需要扔掉侧边栏，因为侧边栏对移动用户来说毫无疑义，Facebook 以及 Amazon 一类的站点使用这种方法改善用户体验。</p>
<p><strong>图片缩放<br />
</strong></p>
<p>很多基于博客系统的站点都包含移动版，实现更简单的导航，问题是，这些站点同时会像文字那样缩放它们页面上的图片，那些被缩小的图很难看清楚，更甚 的是，你没有办法改变图片的显示尺寸。应当允许用户点击一个图片以显示其完整尺寸版。</p>
<p><strong>简单导航<br />
</strong></p>
<p>与其让移动用户像在桌面上那样显示站点中的所有内容，不如只为他们显示最基本的内容，免得到处滚动，YouTube 在这方面做得最好，页首的那些干净，简单的按钮非常好用。</p>
<p><img title="Simple Navigation" src="http://net.onextrapixel.com/wp-content/uploads/2010/06/simple-navigation.jpg" alt="Simple Navigation" width="580" height="382" /></p>
<p><strong>广告<br />
</strong></p>
<p>去掉侧边栏之后，你的站点中的大部分广告位就没有了，一个不错的方法是将广告放到页尾。</p>
<p><strong>页尾的完整站链接<br />
</strong></p>
<p>虽然你拥有一个移动版本的站点，但用户可能希望看到完整的站点内容，多数移动站点的做法是在页尾放上完整版站点的链接。</p>
<h2><strong>结论</strong></h2>
<p>以上讲述了现代移动 Web 站点设计中的各种问题，下面是创建移动 Web 站点的一些资源和工具：</p>
<p><strong>Tools</strong></p>
<ul>
<li><a href="http://validator.w3.org/mobile/">W3c Mobile Checker</a> （W3C 移动站点验证）</li>
<li><a href="http://www.quirksmode.org/m/table.html">JavaScript Support for Phones</a> （手机浏览器的 JavaScript 支持）</li>
<li><a href="http://www.mofusepremium.com/">Mobile Site Converter</a> （移动站点转换）</li>
<li><a href="http://www.gomez.com/mobile-readiness-instant-test/">Simple Mobile Site Testing （简单移动站点测试）</a></li>
</ul>
<h4>原文作者<br />
<a title="Posts by Ashton Blue" href="http://www.onextrapixel.com/author/ashton-blue/">Ashton Blue</a></h4>
<p>Ashton (Ash) Blue 是 Ash Blue Web 设计公司的创办者，他的公司网站是 <a href="http://www.ashbluewebdesign.com/">www.ashbluewebdesign.com</a> ，Twitter 账户是 <a href="http://twitter.com/ashblueWD">http://twitter.com/ashblueWD</a></p>
<p>本文国际来源：onextrapixel.com <a href="http://www.onextrapixel.com/2010/06/28/designing-for-the-modern-day-mobile-market/">Designing For The Modern Day Mobile Market</a></p>
<p>中文翻译来源：<a href="http://www.comsharp.com/"><strong>锐商企业CMS</strong> 网站内容管理系统</a> 官方网站</p>
]]></content:encoded>
			<wfw:commentRss>http://nffish.com/archives/461/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS实现文本框发光,类似chrome和safari</title>
		<link>http://nffish.com/archives/254</link>
		<comments>http://nffish.com/archives/254#comments</comments>
		<pubDate>Wed, 19 Aug 2009 08:36:45 +0000</pubDate>
		<dc:creator>Nffish</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://nffish.com/?p=254</guid>
		<description><![CDATA[像 Chrome, Safari 一样当前输入框发光，将下面的样式添加到 CSS 中就可以了。 input:focus, select:focus, textarea:focus { outline: 2px solid #ebc476; -moz-outline-radius: 5px; !important } 另一个,这段取自Gmail的: input:focus,...]]></description>
			<content:encoded><![CDATA[<p><span style="color: #382e1f; font-family: 'Trebuchet MS','Lucida Grande',Arial,sans-serif; font-size: 12px; line-height: 21px; text-align: left;">像 Chrome, Safari 一样当前输入框发光，将下面的样式添加到 CSS 中就可以了。</span></p>
<p><img class="alignnone" src="http://pic.yupoo.com/nffish/751407ef2d1a/v22za4kg.jpg" alt="" width="218" height="44" /></p>
<p>input:focus, select:focus, textarea:focus {<br />
outline: 2px solid #ebc476;<br />
-moz-outline-radius: 5px; !important<br />
}</p>
<p>另一个,这段取自Gmail的:</p>
<p><img class="alignnone" src="http://pic.yupoo.com/nffish/497777ef2d1a/3axy94nr.jpg" alt="" width="252" height="46" /></p>
<p>input:focus, select:focus, textarea:focus {<br />
border:2px solid #BBDAFD !important;<br />
margin:0 !important;<br />
outline-color:-moz-use-text-color !important;<br />
outline-style:none !important;<br />
outline-width:0 !important;<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://nffish.com/archives/254/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>CSS控制滚动条滚动时页面背景不动</title>
		<link>http://nffish.com/archives/227</link>
		<comments>http://nffish.com/archives/227#comments</comments>
		<pubDate>Mon, 13 Apr 2009 08:21:29 +0000</pubDate>
		<dc:creator>Nffish</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[滚动条]]></category>
		<category><![CDATA[背景]]></category>

		<guid isPermaLink="false">http://nffish.com/?p=227</guid>
		<description><![CDATA[以前在阿里巴巴上看到这个效果,一直好奇是怎么实现的.今天又偶然看到,Google了一下 CSS有个 background-attachment 属性 设置背景图像是否固定或者随着页面的其余部分滚动。 例子: body { background-image: url(stars.gif); background-attachment: fixed } 还可以用javascript动态改变 Object.style.backgroundAttachment=scroll&#124;fixed//固定 参考:http://www.w3school.com.cn/css/pr_background-attachment.asp]]></description>
			<content:encoded><![CDATA[<p>以前在阿里巴巴上看到这个效果,一直好奇是怎么实现的.今天又偶然看到,Google了一下</p>
<p>CSS有个 background-attachment 属性 设置背景图像是否固定或者随着页面的其余部分滚动。<br />
例子:</p>
<pre>body
  {
  background-image: url(stars.gif);
  <span style="color: #0000ff;"><code>background-attachment</code>: fixed</span>
  }</pre>
<p>还可以用javascript动态改变<br />
Object.style.backgroundAttachment=scroll|fixed//固定<br />
参考:<a href="http://www.w3school.com.cn/css/pr_background-attachment.asp">http://www.w3school.com.cn/css/pr_background-attachment.asp</a></p>
]]></content:encoded>
			<wfw:commentRss>http://nffish.com/archives/227/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
