关于页面前端设计

但凡从事互联网的人基本都会写几行 html,用过 Word 的人用 Dreamweaver 也能做出规整的页面,所以大部分人会很自然地认为“页面的开发没什么技术含量,很简单”。不仅有这种普遍的认知,对从业者来说也有很多疑惑:做页面前端实现,没问题;兼容性,小 case;图片集成,一直都在用……还能有什么问题?瓶颈啊、天花板啊、转型啊、出路啊就在从业者中广泛讨论。是不是真的没什么问题了呢?网易邮箱前端技术中心也设立好几年了,似乎有着讨论不完的话题,也经常会有一些新的想法让大家为之一振。那么页面开发还有哪些要求,还要做些什么,这里面的水有多深,让我们舀舀看。

在不同的时期对页面前端的看法似乎是多变的。在互联网早期的时候,小车还是比房子贵的,烧饼和粉丝还只是用来吃的,菊花还只是用来泡茶的。那时的页面设计风格相对单一,对应的页面需求比较简单,并且当时的浏览器也基本是 IE6 的天下,javascript 也只是网页特效的代名词,HTML 页面本身没有引起太多人的关注,似乎只要能用 div 甚至 table 加 css 辅助把图片定好位,把页面内容预留好就 OK 了,并且这种观念存在了很长一段时间。随着页面内容的丰富,设计风格的发展,交互复杂性的增加,AJAX 的应用,浏览器的更新换代,又让大家重新对最基本的页面本身重视起来。然后热议的就是浏览器的兼容性,碰到问题最热衷的就是满网络搜索 hack,顺便再骂骂 IE6、7……当这些都做一遍后,似乎又遇到了瓶颈,又开始寻找出路。我们就从这个阶段开始说起。

实现效果图是最基本的工作

把视觉稿通过页面代码的方式表现出来包含了两个基本诉求:1.能够真实反映视觉稿;2.能够通过浏览器的兼容。这两个诉求的达成需要我们有追求细节的态度和一定的页面功底,能完成这两个内容就可以初步进入页面前端的从业者行列了,但这就代表着我们可以胜任页面开发的工作了?不,才刚刚开始!

与设计师的沟通和项目的参与

沟通很重要。先抛出几个问题:我们有没有和设计师探讨过某些效果对低端浏览器渲染效率影响比较大?有没有探讨过部分效果可以用 CSS3 实现从而使得结构更加简洁清晰?有没有在代码和视觉中寻追求过平衡?页面前端的开发向基本用户,编写的代码也直接作用在浏览器上,我们有义务对页面的稳定性和渲染效率负责。我们也经常碰到项目在总体进度压力下导致的设计与页面前端开发同步进行,这时更有必要尽量多地获取项目信息,了解我们还要做些什么,这些可以帮助我们充分考虑重用和框架拓展。

良好的页面结构

页面结构的编写好比盖房的地基建设,其好坏会直接影响到 CSS 代码的质量、js 开发、后台开发还会影响到以后的页面拓展、迭代和页面调整。拿到视觉稿后,不要忙着动手开始,多观察思考。先分析布局,划分框架,然后规划结构,编写代码。特别在大型项目中,合理使用模块化的开发不论从整体进行还是拓展维护都有相当大的好处。

关于 hack

很多同学在页面开发时上网搜索最多的就是 hack 了,是否我们完全要依赖 hack 来实现页面兼容性,答案是否定的。大家经常比喻 IE6 向我们撒了一个谎,结果我们要再撒一百个谎来圆这个谎。不否认 IE6 经常让我们口吐鲜血,但不代表我们用更多的“谎言”来弥补就可以心安理得。大部分情况下可以通过变换思路调整 HTML 结构,或使用一些虽然无法解释但相对安全的 css 来干掉 hack。谁都无法预计使用 hack 什么时候会让我们栽一个大跟头。比如触发 layout 或 position:relative 就可以帮助解决很多 IE6 的问题。

优美的代码

现在很多 web 项目功能复杂,代码规模也会变得很庞大,如何更好地进行协同开发和维护是我们面临的一个问题。需要考虑完善统一的规划,还有要养成良好的代码开发习惯才会在面临各种情况时游刃有余。翻阅页面代码,看到合理的标签使用、良好的注释、清晰的代码结构、用意准确的 css 不仅犹如欣赏一个艺术品,更为下游开发和协同开发降低了不小的沟通成本,我们有什么理由不去这么做呢?举个反面例子:div 滥用是现在比较典型的一个问题。数数看自己使用的标签有多少个呢?不同的语义都该使用对应的标签代码,特别是 HTML5 提供了更丰富的语义化标签,它们都苦苦地在等待战场上的冲锋号,让我们去解放它们吧!

无障碍页面开发

可访问性与易用性是非常主观且人性化的东西。普通人看上去上完美呈现的页面在特殊群体中不一定显得那么贴心。当盲人用读屏软件在页面某个区域内陷入循环时,我们应该感到内疚。只能说目前国内的网站对此的重视程度还远远不够,这就需要我们共同努力,让更多的人感受到我们的热情。

保障效率

作为项目开发中比较靠前的一环,页面开发可能需要尽早完成为项目争取时间,这就需要我们尽可能地提高效率。“工欲善其事,必先利其器”,除了实战经验和代码习惯的形成可以帮助我们提高效率外,想要提高对自己开发的进度掌控能力,还有很多辅助工具可以帮助我们进行页面开发。比如使用 Less 或 Sass 可以帮助我们拓展和组织 CSS,大大提高 CSS 的编写效率增加了可维护性。比如可以通过 zen coding 的自动自动完成和自定义代码块让你可以剑指如飞。甚至还见过通过自定义输入法的代码块关键字来提升开发速度的。多多发掘一定会找到最合适自己使用的工具。

针对服务器的优化

页面开发也需要了解服务器的优化,尽量减小服务器负担。比如 css sprite 就是一个典型减小服务器请求数的例子。在网易邮箱的页面前端开发中大家不停地在做着各种优化,比如一直在寻求文件大小与服务器请求数的平衡;为了尽可能提高缓存利用率采用了补丁升级;对 class 名进行了混淆压缩避免命名过长的冗余;应用 base64 减少请求数量等等措施。这些都是综合权衡的结果,需要考虑各个方面整体优化。因为当页面访问量达到一定的数量级时,再小的一点优化都会达到可观的效果,再小的问题都可能会形成巨大的灾难。

拥抱 HTML5

这是一个充满机会的时代,HTML5时代的来临伴随着移动互联网的兴起创造了更大的机会,还有太多的东西值得我们去学习去发现。 HTML5 提供了丰富的 JS API 接口,需要我们去研究;CSS3的绚丽吸引了足够多的眼球,需要我们去研究;移动设备上如何开发更加适配的页面,需要我们去研究……

Stay Hungry, Stay Foolish

水是越舀越多了,却发现原来下面还深不见底,上面的内容越是深入研究就越会发现更多山川需要翻越。保持饥饿状态,用眼睛去努力发现发掘,不断丰富技能才能找到定位,突破瓶颈,正所谓“唯有高屋建瓴方可水到渠成”。形成本文是因为之前和同行讨论到瓶颈的问题,想给自己,给页面前端的同学一起找找定位,梳理一下思路。拿苹果 CEO 在斯坦福演讲的一句话“Stay Hungry, Stay Foolish”和大家共勉。

Seo先生博客转发,本文固定链接地址:https://seosir.cc/691.html

网络于SEO的过去和将来

SEO,最早雅虎杨致远就开始做了,只是当时没成为行业。现在SEO已经成为行业。最早的SEO有关键字堆积,作弊。2004年发展较为火热,随后搜索引擎开始针对作弊来改变,就这样慢慢促进了SEO的正规化操作。只要有搜索引擎的地方,就有SEO,所以,SEO自从有了搜索引擎就出现了,并伴随搜索引擎的发展而发展。其实SEO和搜索引擎是相互发展,齐头并进的,存在内在联系的学科。搜索引擎有很多很多,每个产品都有自己的忠实用户,搜索需求不一样,搜索方式不同,就细分了很多的中小型搜索引擎。最大的莫非是谷歌,百度。其他的有搜狗等。

总得来说,未来的SEO,会是一个大的学科,而不是简简单单的关键字堆积,外链,内链,SEO会有上百种增加权重的方法。都需要我们去探索,去尝试。未来网站质量会越来越高,质量差的只能死掉。SEO,除了技术上的操作外,还有营销转化,人性的研究,太多了,每个人都需要不断的学习,不断的跟随搜索引擎的速度走。算法不断改变,政策不断调整,要跟上信息的更新,才能与引擎友好相处。

SEO先生博客发布,固定链接:https://seosir.cc/684.html

电子商务站基本SEO模块介绍

现如今,随着电子商务网站的普及化,不同品牌的电商网站虽有不同但是也有一些共通之处,本文就电子商务网站基本的SEO模块做一个简单的介绍与分享。

一丶电子商务网站特点

电子商务网站的出现源于电子商务活动中的各个主体,按照一定的交互关系和交互内容所形成的相对固定的商务活动样式,经济活动的主体围绕企业丶消费者(家庭)和政府。

目前常用的电子商务网站基本分为三种模式:即B2B 丶B2C和C2C。

最常见的为B2C模式的电子商务网站,但无论是哪种模式的电子商务网站,都有其模块上的共通点。

二丶电子商务网站基本模块与特点

经多年观察,电子商务网站主要包含以下八大基本的SEO模块:

1丶品牌页

品牌页是针对含多品牌的B2C类电子商务网站,在某些知名电商中特点尤为明显,如:梦芭莎,除自有品牌外,各产品也带源有品牌。

特点是:

1) 关键词密度高,品牌名称反复出现;

2) 内链多,获得的站内链接数量多;

3) 关键词竞争激烈,品牌名称词往往较热;

4) 目标多,网站往往有多个品牌页;

5) 品牌页面连接品牌与产品体系网页。

2丶产品列表页

所有电商网都有产品列表页,其特点是:

1) 产品页有较多整站链接,尤其是首页链接;

2) 产品分类页内导出链接较多;

3) 产品分类页更新频率较快;

4) 产品分类是网站链接体系之一。

3丶产品页

1) 产品页在网站内部所占的比例最大;

2) 产品页处于整个网站结构最底层;

3) 产品页更新频率较其他页面更低;

4) 产品页获得的导入链接最少。

4丶促销活动页

1) 最容易出现SEO问题,如果意识不到位,最容易被做成整张图片;

2) 通常以单页形式出现,生命周期较短;

3) 多数情况下,仅依靠首页获得推荐链接;

4) 广告语最多,朴实的文字量最少。

5丶试用/赠品页

1) 促销页中实质性的内容较少;

2) 促销赠品相关的关键词却又比较热;

3) 促销页面最吸引人的是线下的礼品。

6丶站内搜索

从站内检索功能中,可了解到电商网站的成熟度,越是成熟丶用户体验越强的网站,在搜索功能的开发上越细致:

1) 从SEO角度观察,站内搜索页面与tag标签页面担当的角色类似,单从功能上,可将两者归为一类;

2) 可通过增加搜索类别,并使用搜索功能为任意关键词快速创建登录页。

7丶TAG标签

只有少量成熟的电商网站拥有TAG设计架构:

1) 强大的tag标签云,可帮助高度集中热门的话题;

2) 标签页面可看作是搜索页的一种辅助,通过文章的TAG标签定义与串联,可扩增更多关键词高度密集的文章列表页面,形式与搜索结果页面类似。

8丶FAQ知识/资讯

知识栏目及资讯频道属于电子商务站信息量的一种替补,其用意在于:

1) 吸引信息型搜索用户,转化率低但搜索基数大;

2) FAQ可解决网站更新速度缓慢的问题;

3) FAQ页如与产品页完全结合,可提高关键词密度,且可帮助推荐更多产品,为产品页增加更多链接。

综上所述,以上八大基本模块是电商网站的运营能否充分发挥的必备条件。Seo先生博客发布,固定链接地址:https://seosir.cc/679.html

微软Windows 8正式发布倒计时30天

Windows 8还有30天驾临!

还有30天,微软就将正式发布Windows 8。

10月26日,微软将面向全球发布Windows 8,届时会有大批量Windows 8台式机、笔记本、平板机上市。当然,基于ARM处理器的Windows RT设备也将一同亮相。微软还将在当天发布自己的Windows 8平板机Surface。

还有30天,在这30天里,我们期待能从微软那里探知些什么消息?下面进行一下简单的分析。

更多Windows 8价格详情:微软当前已经宣布,在2013年1月31日之前,Windows XP、Vista和Windows 7用户可以支付39.99美元下载Windows 8升级包。从现在起至1月31日购买Windows 7 PC的用户只需支付14.99美元即可升级至Windows 8。

然而,微软并没有透露Windows 8完整版的价格。

Windows RT版Surface价格:微软Surface平板机包括两大版本,一款运行Windows RT,另一款运行Windows 8专业版。Windows RT版Surface将在10月26日随Windows 8上市,但是Windows 8专业版Surface则要再等几个月。

当前微软一直不肯宣布Windows RT版Surface的价格,只有鲍尔默曾经说,其售价定在300美元至800美元之间。

更多微软专卖店消息:微软在加速建设实体零售店,为了迎接Windows 8、Windows RT和Surface等,微软将开张更多的专卖店,此外,还将在秋季新增30家临时专卖店,以满足用户需求。

不过,微软专卖店当前仅在美国和加拿大有建设,不知何时才能来到你我身边。

更多Windows 8应用程序:自从Windows 8在8月份完成RTM,微软就在不断向Windows Store中添加应用程序,尤其是Metro应用程序。非官方消息称,Windows Store中已经有2000多款应用程序可下载了。在接下来的一段时间,我们有望看到微软发布更多Windows 8 Metro应用程序。

更多Windows 8/RT PC价格信息:诸如惠普、戴尔、华硕、宏碁、联想等硬件厂商都将第一时间上市Windows 8设备,但是当前其中的大多数都没有宣布售价,等到10月26日,它们的价格就将一一揭晓。

大量广告:微软现在已经开始在美国部分城市打出Surface的广告,包括纽约、拉斯维加斯、芝加哥,预计未来一段时间,我们会被Windows 8的宣传广告狂轰乱炸的。

Seo先生发布,固定链接地址:https://seosir.cc/676.html?转载请注明。

关于Document.CompatMode的一些介绍

对于document.compatMode,很多朋友可能都根我一样很少接触,知道他的存在却不清楚他的用途。今天在ext中看到 document.compatMode的使用,感觉这个对于我们开发兼容性的web页面还是很有帮助。

我们都知道,IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Standards Mode下对于盒模型的解释和其他的标准浏览器是一样,但在Quirks Mode模式下则有很大差别,而在不声明Doctype的情况下,IE默认又是Quirks Mode。所以为兼容性考虑,我们可能需要获取当前的文档渲染方式。

document.compatMode正好派上用场,它有两种可能的返回值:BackCompat和CSS1Compat,对其解释如下:
BackCompat:Standards-compliant mode is not switched on. (Quirks Mode)
CSS1Compat:Standards-compliant mode is switched on. (Standards Mode)
在实际的项目中,我们还需要在获取浏览是否IE,这样就可以得到IE的渲染模式了。
在Ext中的代码:
1.var ua = navigator.userAgent.toLowerCase();
2.var isStrict = document.compatMode == “CSS1Compat”,
3.isIE = !isOpera && ua.indexOf(“msie”) > -1,
4.isBorderBox=isIE&&!isStrict;

当文档有了标准声明时, document.compatMode 的值就等于 “CSS1compat”, 因此, 我们可以根据 document.compatMode 的值来判断文档是否加了标准声明:
1.Var height = document.compatMode==”CSS1Compat” ? document.documentElement.clientHeight : document.body.clientHeight;

Seo先生博客发布,固定链接地址:https://seosir.cc/668.html?转载请注明。