Unobtrusive的Web开发
作者:March 来源:三月的蚁穴 发布时间:2007-11-23 13:13:00
原文:Unobtrusive Ajax。
今天才看见的一个Presentation,是Jesse Skinner在06年10月发表的。虽然题目是关于Ajax的,但实际上前面很大篇幅再讲什么是Unobtrusive的Web开发,而且将得也很有意思。下面把其中的要点摘录出来翻译,分享一下。
对Web前端进行分层
Web前端的分层:
核心思想:结构(HTML)、表现(CSS)和行为 (JavaScript)
物理上:.html、.css和.js文件
概念上:各层之间,相互独立,互不影响
借用MVC的思想:
Model - HTML
View - CSS
Controller - JavaScript
物理上的分层
CSS只出现在.css文件中,JavaScript只出现在.js文件中
在HTML中不会出现
onload
、onclick
或者style
属性不使用不赞成使用的HTML,比如
font
标签和align
属性
概念上的分层
内容和表单在纯HTML中(没有CSS和JavaScript)也能够正常显示和使用
表单和链接在没有JavaScript时候也能正常工作
只在CSS中定义表现,而不是在HTML或JavaScript中
任何人可以通过任何客户端访问内容,即便是没有CSS、JavaScript,甚至没有鼠标
两种分层有何不同
物理分层主要使开发者受益
概念分层主要让使用者受益
Unobtrusive的前端
Unobtrusive的HTML
使用更多的HTML标签
只将
<table>
用于表格式的数据避免使用无意义的
<div>
和<span>
Unobtrusive的CSS
All CSS is unobtrusive
尽量使用可重用的
class
将CSS放在外部.css文件中,或者
<style>
标签中最好使用
<h1>
,而不是<div class="header">
Unobtrusive的Flash对象
用JavaScript将HTML替换成Flash
Bobby van der Sluis的脚本(bobbyvandersluis.com)
将Flash的内容同样放在HTML中
如果浏览器支持Flash,用户将会欣赏性感的Flash版本
不要在HTML中加入混乱的Flash代码
Unobtrusive的JavaScript
从纯HTML入手
JavaScript只用来为HTML添彩
不要摆架子,测试每一个细节
离了JavaScript,页面仍然能够正常工作
不要使用
onclick
或javascript:void(0)
将JavaScript放在外部.js文件中,或者
<script>
标签中


猜你喜欢
- 最近Google官方的开发者博客中宣布新的版本Tensorflow(0.12)将增加对Windows的支持,想试着windows10下学习t
- 可迭代(iterable)迭代(遍历)就是按照某种顺序逐个访问对象中的每一项。Python中有很多对象都是可以通过for语句来直接遍历的,例
- spring boot 测试单元修改数据库不成功spring boot 集成data jpa 在test区测试数据库操作的时候,查询正常,但
- 数据结构与算法将序列分解为单独的变量问题:现在有一个包含 N 个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给 N 个变量?解答:任
- 最近看ECShop到网上找资料,发现好多说明ECShop的文件结构不全面,于是想自己弄个出来。但这是个无聊耗时的工作,自己就写了个Pytho
- 错误展示new_model = load_model(“model.h5”)报错:1、keras load_model valueError
- dlib包安装失败 python安装dlib时报错:Running setup.py install for dlib &helli
- 这里从八个pandas的数据处理生命周期,整理汇总出pandas框架在整个数据处理过程中都是如何处理数据的。也就是从pandas的数据表对象
- 基于邮件通知的服务监控和告警系统主要功能点:配置专用日志格式记录耗时日志格式:'simple':{'format
- Python抓包并解析json爬虫在使用Python爬虫的时候,通过抓包url,打开url可能会遇见以下类似网址,打开后会出现类似这样的界面
- hello,大家好,我是Dream。马上就跨年了,为了广大的单身男性成员,我就慈悲一下,把我的存货–表白神器拿出来了,百试百灵(虽然我一次也
- 首先,我用的mysql版本号是5.5.17的,最近遇到的问题是在eclipse中通过jdbc往数据库写中文数据的时候,在数据库中显示的是??
- 前言cookie:在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪
- LRU:least recently used,最近最少使用算法。它的使用场景是:在有限的空间中存储对象时,当空间满时,会按一定的原则删除原
- IE 的 Cookie 文件保存在 ?:\Documents and Settings\<user>\Cookies 目录,后缀
- 它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, Adi
- 一、Python安装Window系统下,python的安装很简单。访问python.org/download,下载最新版本,安装过程与其他w
- 文本如图:Python:import sysresult=[]with open('accounts.txt','r
- 本文实例讲述了python实现的分析并统计nginx日志数据功能。分享给大家供大家参考,具体如下:利用python脚本分析nginx日志内容
- QSlider 是一个具有可来回拉动手柄的控件。有时使用滑块比输入数字或使用旋转框更方便。在我们的例子中,我们将创建一个滑块和一个标签。标签