2024-08-08



<!DOCTYPE html>
<html>
<head>
    <title>WebSocket 基础使用</title>
    <script type="text/javascript">
    function init() {
        output = document.getElementById('output');
        output.innerHTML = '连接中...';
        
        // 创建WebSocket实例,指定服务器地址和端口
        ws = new WebSocket('ws://localhost:8181');
        
        // 监听WebSocket的打开事件
        ws.onopen = function(evt) { 
            output.innerHTML = '已连接'; 
        };
        
        // 监听WebSocket的消息事件
        ws.onmessage = function(evt) {
            output.innerHTML += '<br>收到消息: ' + evt.data;
        };
        
        // 监听WebSocket的错误事件
        ws.onerror = function(evt) {
            output.innerHTML += '<br>发生错误'; 
        };
        
        // 监听WebSocket的关闭事件
        ws.onclose = function(evt) {
            output.innerHTML += '<br>连接已关闭'; 
        };
    }
    
    // 发送消息的函数
    function sendMessage() {
        var message = document.getElementById('message').value;
        ws.send(message);
    }
    </script>
</head>
<body onload="init();">
    <h1>WebSocket 实例</h1>
    <div id="output"></div>
    <input type="text" id="message" value="Hello, WebSocket!">
    <button onclick="sendMessage()">发送消息</button>
</body>
</html>

这段代码展示了如何在一个HTML页面中使用JavaScript来初始化一个WebSocket连接,并且提供了简单的接口来发送和接收消息。代码中包含了对WebSocket生命周期中常见事件的监听和处理:打开、接收消息、错误以及关闭连接。

2024-08-08

HTML5是HTML的最新标准,它的基础语法主要包括以下几个部分:

  1. 文档类型声明:



<!DOCTYPE html>
  1. 页面的开始和结束标签:



<html>
    <head>
        <!-- 页面的元数据和标题 -->
        <title>页面标题</title>
    </head>
    <body>
        <!-- 页面内容 -->
        <h1>这是一个标题</h1>
        <p>这是一个段落。</p>
    </body>
</html>
  1. 元素的属性:



<!-- 例如,为图片添加alt属性 -->
<img src="image.jpg" alt="描述文字">
  1. 注释:



<!-- 这是一个注释 -->
  1. 标题:



<h1>最重要的标题</h1>
<h2>次重要的标题</h2>
<!-- 以此类推,h3, h4, h5, h6 -->
  1. 段落和换行:



<p>这是一个段落。</p>
<br> <!-- 换行 -->
  1. 文本格式化标签:



<strong>粗体文本</strong>
<em>斜体文本</em>
<del>被删除的文本</del>
<ins>被插入的文本</ins>
  1. 链接:



<a href="https://www.example.com">链接到example.com</a>
  1. 图片:



<img src="image.jpg" alt="描述文字">
  1. 列表:



<!-- 有序列表 -->
<ol>
    <li>第一项</li>
    <li>第二项</li>
</ol>
 
<!-- 无序列表 -->
<ul>
    <li>第一项</li>
    <li>第二项</li>
</ul>
 
<!-- 定义列表 -->
<dl>
    <dt>项目 1</dt>
    <dd>描述 1</dd>
    <dt>项目 2</dt>
    <dd>描述 2</dd>
</dl>
  1. 表格:



<table>
    <tr>
        <th>表头1</th>
        <th>表头2</th>
    </tr>
    <tr>
        <td>数据1</td>
        <td>数据2</td>
    </tr>
</table>
  1. 表单和输入:



<form action="/submit" method="post">
    <label for="name">姓名:</label>
    <input type="text" id="name" name="username">
    <input type="submit" value="提交">
</form>
  1. 帧(iframe):



<iframe src="page.html" name="iframe_name"></iframe>
  1. 视频和音频:



<!-- 视频 -->
<video width="320" height="240" controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.ogg" type="video/ogg">
  您的浏览器不支持视频标签。
</video>
 
<!-- 音频 -->
<audio controls>
  <source src="song.ogg" type="audio/ogg">
  <source src="song.mp3" type="audio/mpeg">
  您的浏览器不支持音频元素。
</audio>
  1. Canvas绘图:



<canvas id="myCanvas" width="200" height="100">
  您的浏览器不支持Canvas。
2024-08-08

HTML5引入了一些新的input类型,使得表单的创建更加方便和有效。这些新的input类型包括:

  1. number - 允许用户输入数字。
  2. range - 允许用户从指定范围内选择一个值。
  3. email - 强制输入格式为电子邮件的文本。
  4. color - 允许用户选择颜色。
  5. date - 允许用户选择日期。

以下是这些新input类型的基本用法示例:




<form>
  <!-- 数字输入 -->
  <input type="number" name="quantity" min="1" max="5" step="1" value="1">
 
  <!-- 滑块输入 -->
  <input type="range" name="points" min="0" max="10" step="1" value="5">
 
  <!-- 电子邮件输入 -->
  <input type="email" name="email" required>
 
  <!-- 颜色选择器 -->
  <input type="color" name="color">
 
  <!-- 日期选择器 -->
  <input type="date" name="birthday">
 
  <input type="submit">
</form>

这些新的input类型提供了原生的输入验证和格式化,使得表单的处理更加直观和方便。

2024-08-08

以下是一个简单的HTML5网页模板,展示了如何创建一个简单的端午节主题网站。




<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>端午节网站模板</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            background-color: #f4f4f4;
            margin: 0;
            padding: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
        }
        .container {
            text-align: center;
            padding: 20px;
        }
        h1 {
            color: #58bc58;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>欢迎来到端午节网站</h1>
        <p>这里有关于端午节的信息和传统活动。</p>
        <!-- 添加图片、视频或其他内容 -->
    </div>
</body>
</html>

这个模板使用了简单的HTML结构和内联CSS样式来创建一个简洁的端午节主题网页。你可以根据需要添加图片、视频、文字内容等来丰富这个网站。

2024-08-08

由于原始代码已经包含了对多种框架的支持,我们可以选择其中一个框架来展示如何使用身份证读取功能。以下是一个使用Vue.js的简单示例:




<template>
  <div>
    <input type="file" @change="handleIDCard" />
    <div v-if="idCardInfo">
      姓名: {{ idCardInfo.name }}
      身份证号: {{ idCardInfo.id }}
    </div>
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      idCardInfo: null
    };
  },
  methods: {
    handleIDCard(event) {
      const file = event.target.files[0];
      if (!file) return;
 
      const reader = new FileReader();
      reader.onload = (e) => {
        const data = e.target.result;
        this.parseIDCard(data);
      };
      reader.readAsDataURL(file);
    },
    parseIDCard(data) {
      // 假设 parseIDCardData 是一个模拟的函数,用于解析身份证图像中的信息
      const idCardInfo = parseIDCardData(data);
      this.idCardInfo = idCardInfo;
    }
  }
};
</script>

在这个例子中,我们使用了Vue.js的模板语法来展示一个文件选择输入和读取到的身份证信息。当用户选择了文件后,会创建一个FileReader对象来读取文件,然后在文件读取完成后解析身份证信息,并将解析结果展示出来。注意,parseIDCardData是假设的函数,实际中需要替换为能够处理身份证图像并返回相应信息的真实函数。

2024-08-08

HTML、XHTML和HTML5都是用于创建网页的标准语言,但它们有不同的特点和用途。

  1. HTML (Hypertext Markup Language):
  • 最常用的标准语言。
  • 不是严格的XML形式,容错性较高。
  • 基本语法是开放的,不需要, 例如结束标签。
  1. XHTML (Extensible Hypertext Markup Language):
  • 设计来兼容HTML,同时遵守XML规则。
  • 严格的XML语法,更适合机器解析。
  • 需要正确的闭合标签,例如。
  • 不支持部分属性,如 alignwidth
  1. HTML5 (Hypertext Markup Language 5):
  • 最新的HTML标准。
  • 引入了新的语义标签和API。
  • 支持画布(Canvas)、视频(Video)和音频(Audio)。
  • 表单控件有日期选择器、颜色选择器等。

对比这三者的基本语法和特点,以下是一个简单的HTML5页面示例:




<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>HTML5 Example</title>
</head>
<body>
    <h1>Welcome to HTML5</h1>
    <p>This is a paragraph.</p>
    <video controls>
        <source src="movie.mp4" type="video/mp4">
        Your browser does not support the video tag.
    </video>
</body>
</html>

这个示例展示了HTML5的基本结构,包括文档类型声明、页面标题、字符集定义、HTML元素等,还包含了一个视频嵌入。这是一个简洁而现代的网页结构,适用于现代网页设计。

2024-08-08

在HTML5中,相对定位和绝对定位是CSS的两种定位机制。

  1. 相对定位(Relative Positioning)

相对定位是一个非常常用的技术,它可以让你指定元素相对于它在文档中原始位置的移动。当你使用相对定位时,元素仍然占据它在文档流中的原始空间。




.box {
  position: relative;
  top: 20px; /* 向下移动20px */
  left: 40px; /* 向右移动40px */
}
  1. 绝对定位(Absolute Positioning)

绝对定位是一个更加强大的技术,它可以让你指定元素相对于其最近的已定位的(即非 static )祖先元素的移动。如果没有已定位的祖先元素,那么它将相对于最初的包含块进行定位(通常是浏览器窗口)。使用绝对定位时,元素会从文档流中完全移除,并且可以重叠其他元素。




.container {
  position: relative;
}
 
.box {
  position: absolute;
  top: 20px; /* 相对于父元素向下移动20px */
  left: 40px; /* 相对于父元素向右移动40px */
}

在上述代码中,.box元素被定位在.container元素内部的右下角,即.container元素的右下角加上top: 20pxleft: 40px。如果没有.container.box元素将相对于最初的包含块,即浏览器窗口进行定位。

2024-08-08

在学习H5和CSS3的过程中,可以通过创建一个简单的HTML页面并为其添加CSS样式来提升技术。以下是一个示例代码,展示了如何使用H5和CSS3来增强页面视觉效果:




<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>H5和CSS3提升</title>
    <style>
        body {
            background-color: #f4f4f4;
            font-family: Arial, sans-serif;
        }
        .container {
            width: 80%;
            margin: 0 auto;
            padding: 20px;
            background-color: #fff;
            border: 1px solid #ddd;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }
        header {
            text-align: center;
            padding: 20px;
        }
        nav ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }
        nav ul li {
            display: inline-block;
            margin-right: 10px;
        }
        nav ul li a {
            text-decoration: none;
            color: #000;
            padding: 5px 10px;
            border: 1px solid transparent;
            transition: all 0.3s ease;
        }
        nav ul li a:hover {
            background-color: #007bff;
            color: #fff;
            border-color: #007bff;
        }
    </style>
</head>
<body>
    <header>
        <h1>H5和CSS3提升</h1>
    </header>
    <div class="container">
        <nav>
            <ul>
                <li><a href="#">首页</a></li>
                <li><a href="#">关于我们</a></li>
                <li><a href="#">产品服务</a></li>
                <li><a href="#">联系方式</a></li>
            </ul>
        </nav>
        <article>
            <h2>H5和CSS3提升</h2>
            <p>这是一个学习H5和CSS3的示例文本。</p>
        </article>
    </div>
</body>
</html>

这段代码展示了如何使用H5标签(如header, nav, article)以及CSS3的特性(如box-shadow, transition)来增强页面的视觉效果和用户体验。通过这个示例,学习者可以理解如何使用H5和CSS3来创建更现代和响应式的网页设计。

2024-08-08

在HTML5、CSS3和JavaScript的基础上,我们可以创建一个简单的网页框架。以下是一个简单的HTML5文档结构示例,包含了必要的CSS和JavaScript引用:




<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>前端框架示例</title>
    <style>
        /* 在这里写入CSS样式 */
    </style>
</head>
<body>
    <!-- 页面内容 -->
    <h1>欢迎来到我的网站</h1>
    <p>这是一个使用HTML5, CSS3 和 JavaScript 创建的网页。</p>
 
    <!-- 在这里引入JavaScript文件 -->
    <script src="script.js"></script>
</body>
</html>

<style>标签中,你可以添加CSS样式来装饰你的页面。在<script src="script.js"></script>中,你可以引入外部的JavaScript文件来增加页面的交互性。

CSS样式示例:




body {
    font-family: Arial, sans-serif;
    background-color: #f8f8f8;
}
 
h1 {
    color: #333;
    text-align: center;
}
 
p {
    color: #555;
    text-align: justify;
}

JavaScript示例(假设script.js文件包含以下代码):




document.addEventListener('DOMContentLoaded', (event) => {
    console.log('页面已加载完成!');
});

这个简单的示例展示了如何组织一个基本的HTML5网页,并通过外部引入CSS和JavaScript来增强页面功能和样式。

2024-08-08

在CSS中,可以使用text-overflow属性来实现文本溢出时显示省略号。结合white-spaceoverflow属性,可以实现单行或多行文本溢出显示省略号。

以下是一个简单的例子,演示如何在一个容器中实现单行文本溢出显示省略号:




.ellipsis {
  white-space: nowrap; /* 确保文本在一行内显示 */
  overflow: hidden; /* 隐藏溢出的内容 */
  text-overflow: ellipsis; /* 使用省略号表示文本溢出 */
}



<div class="ellipsis">这是一段很长的文本,需要在单行显示省略号</div>

如果要实现多行文本溢出显示省略号,可以使用以下CSS,但注意这种方法的兼容性不如单行文本处理方法广:




.ellipsis-multiline {
  display: -webkit-box; /* 使用弹性盒子布局模型 */
  -webkit-box-orient: vertical; /* 垂直排列子元素 */
  -webkit-line-clamp: 3; /* 限制在三行 */
  overflow: hidden; /* 隐藏溢出的内容 */
  text-overflow: ellipsis; /* 使用省略号表示文本溢出 */
}



<div class="ellipsis-multiline">这是一段很长的文本,需要在多行显示省略号,但注意兼容性问题</div>

注意,多行文本省略号的实现依赖于WebKit内核的浏览器,并且可能不会在所有浏览器上都表现一致。

如果需要更多功能或更好的兼容性,可以使用JavaScript插件,如Clamp.jsjQuery.dotdotdot等。这些插件提供了更多选项和更广泛的浏览器兼容性。