内联元素(inline element)
a - 锚点
abbr - 缩写
acronym - 首字
b - 粗体(不推荐)
bdo - bidi override
big - 大字体
br - 换行
cite - 引用
code - 计算机代码(在引用源码的时候需要)
dfn - 定义字段
em - 强调
font - 字体设定(不推荐)
i - 斜体
img - 图片
input - 输入框
kbd - 定义键盘文本
label - 表格标签
q - 短引用
s - 中划线(不推荐)
samp - 定义范例计算机代码
select - 项目选择
small - 小字体文本
span - 常用内联容器,定义文本内区块
strike - 中划线
strong - 粗体强调
sub - 下标
sup - 上标
textarea - 多行文本输入框
tt - 电传文本
u - 下划线
var - 定义变量
块元素(block element)
address - 地址
blockquote - 块引用
center - 举中对齐块
dir - 目录列表
div - 常用块级容易,也是css layout的主要标签
dl - 定义列表
fieldset - form控制组
form - 交互表单
h1 - 大标题
h2 - 副标题
h3 - 3级标题
h4 - 4级标题
h5 - 5级标题
h6 - 6级标题
hr - 水平分隔线
isindex - input prompt
menu - 菜单列表
noframes - frames可选内容,(对于不支持frame的浏览器显示此区块内容
noscript - )可选脚本内容(对于不支持script的浏览器显示此内容)
ol - 排序表单
p - 段落
pre - 格式化文本
table - 表格
ul - 非排序列表
可变元素
可变元素为根据上下文语境决定该元素为块元素或者内联元素。
applet - java applet
button - 按钮
del - 删除文本
iframe - inline frame
ins - 插入的文本
map - 图片区块(map)
object - object对象
script - 客户端脚本
function c(){var elem1 = document.getElementById("as")
elem1.setAttribute("class","q3")
var elem2 = document.getElementById("ad")
elem2.setAttribute("class","q4")
}
额,我刚看完"javascript DOM编程艺术"
不知道这样写对不对,我没有试哦,你试一下.
============================================
哈,对上面代码的修改.
我刚实验了一下 ,发现在IE下竟然不能使用
e.setAttribute("class","value")
以及e.getAttribute("class")
下面是网上找到的资料:
在交互性较强的Web应用中,经常需要动态更改指定元素的属性值,假设变量e是页面中一个元素的引用,根据W3C DOM标准,可以在JavaScript中使用e.getAttribute('属性名')来取得属性的值,并且用e.setAttribute('属性名', '值')来设置属性值。网页标签中,class是一个常用的属性,用于指定某一个元素遵从一个或多个自定义样式,由于class属于JavaScript 保留值,因此当我们要操作元素的class属性值时,直接使用e.getAttribute('class')和e.setAttribute ('class', 'value')可能会遭遇浏览器兼容性问题。
W3C DOM标准为每个节点提供了一个可读写的className属性,作为节点class属性的映射,标准浏览器的都提供了这一属性的支持,因此,可以使用 e.className访问元素的class属性值,也可对该属性进行重新斌值。而IE和Opera中也可使用e.getAttribute ('className')和e.setAttribute('className', 'value')访问及修改class属性值。相比之下,e.className是W3C DOM标准,仍然是兼容性最强的解决办法。
以下列表说明了上文提及的三种做法的浏览器兼容性测试:
* e.className 能在IE、Mozilla(Firefox)、Opera和Safari正确运行
* e.getAttribute('class')和e.setAttribute('class', 'value') 能在Mozilla(Firefox)和Opera中正确运行,在IE和Safari中则不能使用。
* e.getAttribute('className') 在IE和Opera中正确运行,在Mozilla(Firefox)和Safari中则不能使用。
下面是我自己试验的代码,对最初的代码有所修改:
<script language="javascript">
function c(){
var elem1 = document.getElementById("as")
//alert(elem1.className)测试用
elem1.className="q3"
var elem2 = document.getElementById("ad")
elem2.className="q4"
return false
}
</script>
<style>
.q1{
color:red
}
.q2{
color:blue
}
.q3{
color:green
}
.q4{
color:yellow
}
</style>
<div id="as" class="q1"><a href="#" onclick="c()">click me</a>test color</div>
<div id="ad" class="q2"><a href="#" onclick="c()">click me</a>test color</div>