HTML5(二)——特殊符号、新增属性、表单重写属性、

一、HTML5 特殊符号

  1. &nbsp :空格

  2. &gt:大于号 >

  3. &It :小于号 <

  4. &quot :引号”

  5. &copy:”版权符号 @

二、HTML 新增属性

1、contentEditable

规定是否可编辑元素的内容
属性值:
true -----可以编辑元素的内容
false -----无法编辑元素的内容
inherit -----继承父元素的contenteditable属性
当为空字符串时,效果和true一致。
当一个元素的contenteditable状态为true(contenteditable属性为空字符串,或为true,或为inherit且其父元素状态为true)时,意味着该元素是可编辑的。否则,该元素不可编辑。

document.body.contentEditable=true; 可以修改已发布网站

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>contentEditable属性</title>
    </head>
    <body>
        <h2>contentEditable属性</h2>
        <div contenteditable="true">
            Hello contentEditable
        </div>
    </body>
</html>

结果:

2、hidden

hidden属性用于隐藏该元素。一旦使用了此属性,则该元素就不会在浏览器中被显示
2个布尔值
true 规定元素是可见。
false 规定元素是不可见。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>隐藏元素(hidden)</title>
        <style type="text/css">
            #D{
                width: 100px;
                height: 100px;
                background-color: red;
            }
        </style>
    </head>
    <body>

        <div id="D" style="visibility: collapse;">

        </div>
        <!--隐藏元素-->

        <!--方法一:-->
        <!--隐藏:display:none-->
        <span style="display: none;">span1</span>
        <!--显示:display: initial-->
        <span style="display: initial;">span2</span>

        <!--方法二-->
        <p>
            <!--隐藏:visibility: hidden-->
            <span style="visibility: hidden;">span3</span>
            <!--显示:visibility: visible-->
            <span style="visibility: visible;">span4</span>
        </p>

        <!--方法三-->
        <p>
            <span hidden="hidden">span5</span>
            <span>span6</span>
        </p>
    </body>
</html>

结果:

为了兼容一些不支持该属性的浏览器(IE8),可以在CSS中加如下样式:

*[hidden]{
   display: none;
}

var div1=document.querySelector("body #div1");
div1.innerHTML+=" +++";

3、draggable

规定元素是否可拖拽
3个枚举值
true 规定元素是可拖动的。
false 规定元素是不可拖动的。
auto 使用浏览器的默认特性。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>拖拽元素(draggable)</title>

        <style>
            .box {
                width: 200px;
                height: 200px;
                display: inline-block;
                font-size: 0;
                margin: 0;
                padding: 0;
            }

            #div2 {
                width: 400px;
                height: 400px;
                background: lightseagreen;
                font-size: 0;
            }
        </style>
    </head>
    <body>
        <div class="box" draggable="true" style="background: lightcoral"></div>
        <div class="box" draggable="true" style="background: orangered;"></div>
        <div class="box" draggable="true" style="background: #4169E1;"></div>
        <div class="box" draggable="true" style="background: limegreen;"></div>

        <div id="div2"></div>

        <script src="../js/jquery-1.11.3.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            var boxes = document.querySelectorAll(".box");
            var div2 = document.getElementById("div2");

            var temp;
            for(var i = 0; i < boxes.length; i++) {
                var box = boxes[i];
                box.ondragstart = function(e) {
                    temp = e.srcElement;
                    console.log("ondragstart开始拖动");
                }

                box.ondrag = function(e) {
                    console.log("ondrag拖动中");
                }

                box.ondragend = function(e) {
                    console.log("ondragend拖动结束");
                }
            }

            div2.ondragover = function(e) {
                e.preventDefault();
            }

            div2.ondrop = function(e) {
                div2.appendChild(temp.cloneNode(true));
            }
        </script>
    </body>
</html>

结果:

4、data-*

data-*属性能让用户自定义属性的方式来存储数据
<span data-order-amount=100></span>
取值:
getAttribute(‘data-order-amount‘)
dataset.orderAmount
jQuery中的data()方法同样可以访问

使用jQuery与javascript添加与获取data属性示例:

<!DOCTYPE html>
<html>

    <head>
        <meta charset="UTF-8">
        <title>data-*</title>
        <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
    </head>

    <body>
        <div id="div1" data-stu-age="100"  data-student=‘{"name":"tome","age":19}‘>学生:Tom</div>

        <button onclick="addData()">添加数据</button>
        <button onclick="getData()">获取数据</button>

        <script type="text/javascript">

            var div1=document.getElementById("div1");
            function addData() {
                div1.setAttribute("data-stu-age",101);  //方法1
                div1.dataset.stuAge=102;                //方法2
                $("#div1").data("stuAge",103);          //方法3
            }

            function getData() {
                console.log(div1.getAttribute("data-stu-age"));     //方法1
                console.log(div1.dataset);                          //方法2
                console.log(JSON.parse(div1.dataset.student).age);
                console.log(div1.dataset.stuAge);
                console.log($("#div1").data("stuAge"));             //方法3
            }
        </script>
    </body>

</html>

结果:

5、placeholder占位属性

这是一个很实用的属性,免去了用JS去实现点击清除表单初始值.浏览器支持也还不错,除了Firefox,其他标准浏览器都能很好的支持

这是一个很实用的属性,免去了用JS去实现点击清除表单初始值.浏览器支持也还不错,除了Firefox,其他标准浏览器都能很好的支持
<input placeholder="请输入用户名">

            <p>
                <label>邮箱:</label>
                <input type="email" name="mail" id="mail" value="" placeholder="请输入邮箱"/>
            </p>

6、required必填属性

约束表单元在提交前必须输入值。

            <p>
                <label>博客:</label>
                <input type="url" name="blog" id="blog" value="" required="required"/>
            </p>

7、pattern正则属性

约束用户输入的值必须与正则表达式匹配。

            <p>
                <label>帐号:</label>
                <input type="text" required="required" pattern="^[0-9a-zA-Z]{6,16}$" />请输入a-zA-Z0-9且长度6-16位的字符
            </p>

8、autofocus自动聚焦属性

            <p>
                <label>博客:</label>
                <input type="url" name="blog" id="blog" value="" required="required" autofocus="autofocus"/>
            </p>

让指定的表单元素获得焦点。

9、autocomplete自动补全属性

当表单元素设置了自动完成功能后,会记录用户输入过的内容,双击表单元素会显示历史输入。

<input type="text" name="username" autocomplete="on/off" />

该属性默认是打开的。

10、novalidate不验证属性

novalidate 属性规定在提交表单时不应该验证 form 或 input 域。
<form action="demo_form.asp" method="get" novalidate="true">

<button formnovalidate="formnovalidate" >提交</button>

11、multiple多选属性

multiple 属性规定输入域中可选择多个内容,如:email 和 file

<input type="file" multiple="multiple” />

            <p>
                <label>相片:</label>
                <input type="file" multiple="multiple"/>
            </p>

12、禁用属性:disabled

13、只读属性:readonly(只读文本框): true false

14、长度属性:size="初始长度"

15、选中属性:selected(默认选中项) 【列表】

16、选中属性:checked (单选按钮选中状态)【单选、复选】

17、输入的最大字符数 :maxlength:type为text或password时,

18、指定按钮是否被选中:checked:type为radio或checkbox时,

19、光标定位:autofocus

三、表单重写属性

表单重写属性(form override attributes)允许您重写 form 元素的某些属性设定。
表单重写属性有:
formaction - 重写表单的 action 属性
formenctype - 重写表单的 enctype 属性
formmethod - 重写表单的 method 属性
formnovalidate - 重写表单的 novalidate 属性
formtarget - 重写表单的 target 属性

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        姓名:<input type="text" name="realname" form="form1"/>
        <form id="form1" method="get">
            <button formmethod="get"  formaction="d01.html">get提交给d01.html</button>
            <button formmethod="post" formaction="d02.html">post提交d02.html</button>
        </form>
    </body>
</html>

运行结果:

原文地址:https://www.cnblogs.com/huoqin/p/9458001.html

时间: 2024-10-21 15:04:06

HTML5(二)——特殊符号、新增属性、表单重写属性、的相关文章

HTML5初探——新增的表单元素和属性

HTML5初探--新增的表单元素和属性 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>HTML5 移动Web开发指南</title> <style type="text/css"> h1, h2, h3, h4, h5, h6 { text-align: center; } input { width: 4

表单的属性和方法, 获取表单和表单的元素, 验证表单

表单的属性和方法 一. 表单字段的属性(id/name/value/form),这里用value属性来举例 上面的form属性代表获取表单字段的父级表单对象 1. 属性的获取         console.log(document.myform.username.value); 2. 属性的设置            document.myform.username.value="123"; 3. 获取表单字段的父级表单对象 console.log(document.myform.u

VS2010、MFC对话框程序、点击一个按钮弹出一个有多选项卡的属性页界面(即属性表单)

第一步: 建立多个属性页,可以添加对话框资源,然后修改对话框资源的属性,在vs2010中,修改如下3个:Style设置为child:Border设置为Thin:System menu设置为fasul; Title Bar为true(默认即为true):修改Caption:为此属性页选项卡的名称: 第二步: 为上面的属性页添加类,父类选为CPropertyPage:添加方式:右击对话框添加类即可. (若是父类中没有CPropertyPage类,从类向导中添加即可,此种方法添加时需要选好相应的对话框

二十五、防止表单重复提交

二十五.防止表单重复提交 防止表单重复提交: 有两种方式: 利用重定向<result type = "redirect"/> 使用拦截器 编写jsp页面 <s:form action="regist"> ????????<s:textfield name="name" label="姓名"></s:textfield> ????????<s:token/> ?????

[ jquery 表单UI选择器和表单元素属性选择器 ] 表单UI选择器和表单元素属性选择器

表单UI选择器和表单元素属性选择器: 实例: <!DOCTYPE html> <html lang='zh-cn'> <head> <title>Insert you title</title> <meta http-equiv='description' content='this is my page'> <meta http-equiv='keywords' content='keyword1,keyword2,keywo

MFC属性表单的创建

一个属性表单由一个或多个属性页组成.它有效地解决了大量信息无法在一个对话框上显示这一问题. 1.创建属性页 为了创建属性表单,首先需要创建属性页,后者对应的MFC类是CPropertyPage,该类生成的对象代表了属性表单中一个单独的属性页. 在资源编译器下添加3个属性页资源,并修改这三个属性页资源的ID及标题(Caption属性),属性页的标题就是最终在属性页上显示的选项卡的名称.有三种类型的属性页,如图: 说明:如果知道了属性页资源与对话框资源之间的属性区别,也可以在程序中先增加一个普通对话

input表单type属性值

<!-- input表单type属性值: --> <!-- type = "email" 限制用户输入必须为Email类型 --> email<input type="email"> <!-- type="url" 限制用户输入必须为URL类型 --> url<input type="url"> <!-- type="date" 限制用户输入

HTML5的表单新属性(扩展)

新的 form 属性: autocomplete. novalidate  autocomplete控件是指用户在文本框输入前几个字母或是汉字的时候, autocomplete控件就能从存放数据的文本或是数据库里将所有以这些字母开头的数据提示给用户,供用户选择,提供方便. autocomplete 适用于 <form> 标签,以及以下类型的 <input> 标签:text, search, url, telephone, email, password, datepickers,

摆平客户的需求变更之表单扩展属性

客户永远是对的!客户的需求永远是多变的! 需求说明文档写得再详细,说改还得改,程序猿永远这么苦逼. 为了应对客户多变的需求,今天先说说表单的扩展属性.目的是在不修改代码,不重新发布程序的情况下完成表单的扩展. 先下下图: 从这个界面上可以定义如何对表单上进行扩展,在表单上增加一个什么控件,大小.内容.验证都可以的. DEMO地址:http://121.40.148.178:8080/ . 用户名:guest,密码:123456 是的,如果是下拉框的话还能绑定数据源,选择就可以完成,绑定了数据字典