html标签 易错点分析
有个地方用到了标签,结果出现了一个很奇怪的问题,form的内容被提交了两次,只针对IE浏览器,chrome不会。由于使用了boss的一个框架,一度使我怀疑是不是他那框架存在兼容性问题,不过找了好久最终还是找到了答案。原因就在于button标签的使用。
“在 button 元素内部,您可以放置内容,比如文本或图像。这是该元素与使用 input 元素创建的按钮之间的不同之处. 控件 与 相比,提供了更为强大的功能和更丰富的内容。 与 标签之间的所有内容都是按钮的内容,其中包括任何可接受的正文内容,比如文本或多媒体内容。例如,我们可以在按钮中包括一个图像和相关的文本,用它们在按钮中创建一个吸引人的标记图像。”
这是w3c网站上对button的解释,这也是我们为什么使用button的缘故。不过看到后面这一句才使我恍然大悟:"请始终为按钮规定 type 属性。Internet Explorer 的默认类型是 “button”,而其他浏览器中(包括 W3C 规范)的默认值是 “submit”(针对这句话提出异议,我在项目中测试发现IE的默认属性是”submit“,因为只有在IE中才会出现重复提交表单).由于项目里已经使用了onclick属性,并且在相应的js方法里提交了表单,所以在某些默认属性为”submit“的浏览器里相当于再次提交了表单,这也就是根源所在。
不过在button标签里还有一个值得注意的地方:“重要事项:如果在 HTML 表单中使用 button 元素,不同的浏览器会提交不同的值。Internet Explorer 将提交 与 之间的文本,而其他浏览器将提交 value 属性的内容。请在 HTML 表单中使用input来创建按钮”。```
<html>
<body>
<button type="button">Click Me!</button>
</body>
</html>
1.单标签
在HTML基础中,单标签就是由一个标签组成的。例如
<br>、<hr>、<img>、<input>、<param>、<meta>、<link>
2.双标签
而双标签则是由“开始标签”和“结束标签”两部分构成(这两部分是相同的)。例如
1 <html>、<head>、<title>、<body>、<table>、<tr>
2 <td>、<span>、<p>、<form>、<h1>、<h2>、<h3>
3 <h4>、<h5>、<h6>、<object>、<style>、<b>、<u>
4 <strong>、<i>、<div>、<a>、<script>、<center>(有待补充)
3.特点
1.由尖括号包围的关键词
2.通常是成对出现的
3.标签对中的第一个标签是开始标签,第二个标签是结束标签;
4.开始和结束标签也被称为开放标签和闭合标签。
5.也有单独呈现的标签
6.一般成对出现的标签,其内容在两个标签中间。单独呈现的标签
则在标签属性中赋值。
7.网页的内容需在<html>标签中,标题、字符格式、语言、兼容性、关键字、描述等信息显示在<head>标签中
而网页需展示的内容需嵌套在<body>标签中。某些时候不按标准书写代码虽然可以正常显示
但是作为职业素养,还是应该养成正规编写习惯。
4.区别
单标签与双标签的结束方式不同
单标签结束方式<br/>、<input/>
双标签结束方式</style>