【web前端阶段一】HTML巩固学习(持续更新)(下)

简介: 【web前端阶段一】HTML巩固学习(持续更新)

三.HTML5


1.html5新增类型


电子邮件类型


功能描述:输入E-mail地址的文本框


语法:<input type="email"/>


注意:输入的内容中必须包含"@","@"后面必须具有内容


搜索类型


功能描述:输入搜索关键字的文本框


语法:<input type="search"/>


URL类型


功能描述:输入WEB站点的文本框


语法:<input type="url"/>


注意:输入的内容中必须包含"http://",后面必须有内容


颜色类型


功能描述:预定义的颜色拾取控件


语法:<input type="color"/>


数字类型


功能描述:只能接受数字


语法:


属性:min:当前域能接受的最小值


max:当前域能接受的最大值


step:决定了域所接受值递增或递减的步长,默认为1


日期类型


功能描述:创建一个日期输入域


语法:<input type="date" />


周类型


功能描述:与date类型相似,但只能选择周


语法:<input type="week" />


月份类型


功能描述:与date类型相似,但只能选择月份


语法:<input type="month" />


2.html5新增属性:div标签和span标签


placeholder


作用:默认提示


语法:<input type="text" placeholder="请输入用户名"/>


multiple


作用:支持在一个域中输入多个值,逗号隔开,一般配合邮箱和URL使用


语法:<input type="email" multiple/>


autofocus


作用:自动获取焦点


语法:<input type="text" autofocus/>


required


作用:防止域为空提交表单时


语法:<input type="text" required/>


minlength和 maxlength


作用:定制元素允许的最小字符数和最大字符数


语法:<input type="text" minlength="6" maxlength="18"/>


min和max


作用:定制元素允许的最小数字和最大数字


语法:<input type="number" min=”0” max=”100”/>


3.html5新增结构标签


常见的html5新增语义化标签


  1. header 页面头部


  1. footer 页脚


  1. article 定义页面独立的内容区域


  1. aside 定义页面的侧边栏内容


  1. details 文档某个部分的细节


  1. summary 是details中的标题


  1. figure 规定独立的流内容


  1. figcaption 是figure的标题


  1. mark 标记


  1. nav 导航链接


  1. meter 用来表示范围已知且可度量的内容。


  1. ruby 加注释


HTML5新增的结构标签


<header>...</header> 头部


<nav>...</nav> 导航


<section>...</section>定义文档中的节。比如章节、页眉、页脚或文档中的其它部分


<aside>...</aside> 侧边栏


<footer>...</footer>页脚


<article>...</article>代表一个独立的、完整的相关内容块,可独立于页面其它内容使用。例如一篇完整的论坛帖子,一篇博客文章,一个用户评论等


4.datalist标签


<details> 标签用于描述文档或文档某个部分的细节


IE不支持 <details> 标签


<details>
  <summary>details中的标题</summary>
  <p>详细的内容</p>
</details>


5.视频和音频


视频


<video> </video>标签


<video> 标签定义视频,比如电影片段或其他视频流


<video src="movie.mp4" controls>
  您的浏览器不支持 video 标签。
</video>



支持的3种格式:


  • mp4


  • ogg 移动端


  • webM 高清


音频


<audio></audio>标签


<audio> 标签定义声音,比如音乐或其他音频流


<audio src="someaudio.mp3">
    您的浏览器不支持 audio 标签。
</audio>



6.embed标签


<embed/>标签


<embed> 标签定义嵌入的内容,比如插件,当然也可以用来嵌入声音


<embed> 标签必须有 src 属性


<embed src="helloworld.mp4" />


7.canvas标签


<canvas> </canvas> 标签


canvas只是个容器,你可以通过控制坐标在canvas上绘制图形。


一般canvas配合js使用能实现非常复杂的动画效果


<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>画布</title>
    <style  type="text/css">
        canvas{
          background-color: gray;
        }
    </style>
</head>
<body>
    <!--
    canvas标签:
        1.canvas必须配合js在网页上绘制图像
        2.画布是一个矩形区域,我们可以控制其每一个像素
        3.canvas拥有多种绘制路径、矩形、圆形...
      颜色的表示方式:
        1.直接用颜色名称:"red"  "green"
        2.十六进制颜色值:"#eeeeff"
        3.rgb(1-255,1-255,1-255)
      属性:
         fillStyle 填充绘画的颜色、渐变或模式
         strokeStyle  用于笔触的颜色、渐变或模式
         shadowColor  用于阴影颜色
         shadowOffsetX 水平距离偏移量
         shadowOffsetY  垂直距离偏移量
         shadowBlur    模糊级别
     方法:
      getContext():返回一个对象,这个方法封装了很多的绘图方法和属性。
            但是现在只能提供2d的绘画环境。
     rect():创建矩形。
    fillRect():绘制填充的矩形
    createLinearGradient():创建线性渐变
    addColorStop():  渐变对象中颜色和停止位置
    -->
    <canvas id="mycanvas" width="400px"  height="400px">
        您的浏览器版本太低
    </canvas>
    <script type="text/javascript">
    //js代码块
    var canvas=document.getElementById("mycanvas");
    var obj=canvas.getContext("2d");
    // var colorobj= obj.createLinearGradient(0,0,100,0);
    var colorobj=obj.createRadialGradient(50,50,10,50,50,50);
    colorobj.addColorStop(0,"red");
    colorobj.addColorStop(0.5,"blue");
    colorobj.addColorStop(1,"green");
    //obj.rect(0,0,100,100);
    obj.shadowColor="rgb(11,25,9)";
    obj.shadowOffsetX=3;
    obj.shadowOffsetY=3;
    obj.shadowBlur=5;
     obj.fillStyle=colorobj;
    obj.strokeStyle="green";
     obj.fillRect(0,0,100,100);
      obj.strokeRect(100,100,100,100);
    </script>
</body>
</html>



四.个人小练


1.div布局(1)


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>布局练习2</title>
    <style>
        .c1{
            background: #a8c8df;
            height: 150px;
            line-height: 75px;
        }
        .c2{
            background: #e6e8f4;
            height: 50px;
            line-height: 25px;
        }
        p {
            text-align:center;
            font-size: 30px;
        }
        .c3{
            background:#1c56a0;
            height: 300px;
            clear: both;
            line-height: 150px;
        }
        .left,.zhong,.right{
            width: 33.333%;
            height: 400px;
            float: left;
            line-height: 400px;
            text-align: center;
        }
        .left{
            background: #a8bdda;
        }
        .zhong{
            background: #b5d6e5;
        }
        .right{
            background: #276da8;
        }
    </style>
</head>
<body>
<!------------------------------>
<div class="c1">
    <p >头部</p>
</div>
<!------------------------------>
<div class="c2" >
    <p>导航</p>
</div>
<!------------------------------>
<div class="left">
    <p>左边</p>
</div>
<div class="zhong">
    <p>中间</p>
</div>
<div class="right">
    <p>右边</p>
</div>
<!------------------------------>
<div class="c3">
    <p>足部</p>
</div>
<!------------------------------>
</body>
</html>



2.div布局 (2)


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>布局练习3</title>
    <style>
        .c1{ background: #a8c8df;
            height: 400px;
            line-height: 200px;}
        .c2{ background: #e6e8f4;
            height: 200px;
            line-height: 100px;}
        .c3,.c4{height: 200px;
            line-height: 100px;
            width: 50%;
            float: left;
            text-align: center;}
        .c3{ background:#1c56a0;}
        .c4{ background: #a8bdda;}
        p{text-align:center;
            font-size: 30px;}
        .t1,.t2{width: 50%;
            float: left;}
    </style>
</head>
<body>
<div class="t1">
    <div class="c1"><p>左</p></div>
</div>
<div class="t2">
    <div class="c2"><p>上</p></div>
    <div class="c3"><p>左下</p></div>
    <div class="c4"><p>右下</p></div>
</div>
</body>
</html>


相关文章
|
1月前
|
前端开发 JavaScript 安全
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第27天】本文介绍了HTTP/2和HTTPS在前端性能调优中的应用。通过多路复用、服务器推送和头部压缩等特性,HTTP/2显著提升了Web性能。同时,HTTPS确保了数据传输的安全性。文章提供了示例代码,展示了如何使用Node.js创建一个HTTP/2服务器。
49 3
|
21天前
|
消息中间件 前端开发 JavaScript
探索微前端架构:构建现代Web应用的新策略
本文探讨了微前端架构的概念、优势及实施策略,旨在解决传统单体应用难以快速迭代和团队协作的问题。微前端允许不同团队独立开发、部署应用的各部分,提升灵活性与可维护性。文中还讨论了技术栈灵活性、独立部署、团队自治等优势,并提出了定义清晰接口、使用Web组件、状态管理和样式隔离等实施策略。
|
1月前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
1月前
|
前端开发 开发者 C++
独家揭秘:前端大牛们如何高效学习新技术,保持竞争力!
【10月更文挑战第31天】前端技术飞速发展,如何高效学习新技术成为关键。本文通过对比普通开发者与大牛们的策略,揭示了高效学习的秘诀:明确目标、主动探索、系统资源、实践应用和持续学习。通过这些方法,大牛们能更好地掌握新技术,保持竞争力。示例代码展示了如何通过实践加深理解。
39 4
|
1月前
|
前端开发 安全 应用服务中间件
前端性能调优:HTTP/2与HTTPS在Web加速中的应用
【10月更文挑战第26天】随着互联网的快速发展,前端性能调优成为开发者的重要任务。本文探讨了HTTP/2与HTTPS在前端性能优化中的应用,介绍了二进制分帧、多路复用和服务器推送等特性,并通过Nginx配置示例展示了如何启用HTTP/2和HTTPS,以提升Web应用的性能和安全性。
33 3
|
1月前
|
前端开发 JavaScript API
前端框架新探索:Svelte在构建高性能Web应用中的优势
【10月更文挑战第26天】近年来,前端技术飞速发展,Svelte凭借独特的编译时优化和简洁的API设计,成为构建高性能Web应用的优选。本文介绍Svelte的特点和优势,包括编译而非虚拟DOM、组件化开发、状态管理及响应式更新机制,并通过示例代码展示其使用方法。
46 2
|
2月前
|
人工智能
|
2月前
|
人工智能 前端开发
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
2024 川渝 Web 前端开发技术交流会「互联」:等你来报名!
|
2月前
|
存储 前端开发 JavaScript
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
【10月更文挑战第4天】本文探讨了从 Web 2.0 到 Web 3.0 的前端开发演变过程。Web 2.0 时代,前端开发者从静态网页设计走向复杂交互,技术框架如 jQuery、React 和 Vue 带来了巨大的变革。而 Web 3.0 以区块链技术为核心,带来了去中心化的互联网体验,前端开发者面临与区块链交互、去中心化身份验证、分布式存储等新挑战。文章总结了 Web 2.0 和 Web 3.0 的核心区别,并为开发者提供了如何应对新技术的建议,帮助他们在新时代中掌握技能、设计更安全的用户体验。
61 0
从 Web 2.0 到 Web 3.0:前端开发的历史与未来
|
1月前
|
监控 前端开发 JavaScript
前端技术探索:构建高效、可维护的Web应用
【10月更文挑战第23天】前端技术探索:构建高效、可维护的Web应用
47 0