首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java Web 前端基础速查手册:HTML、CSS、JavaScript、DOM 与 BOM 核心知识点

     編輯:Java 相關知識

HTML 核心标签速查

列表

  • 无序:<ul><li>...</li></ul>,type:disc/circle/square。
  • 有序:<ol><li>...</li></ol>,type:1/a/i。
  • 自定义:<dl><dt>术语</dt><dd>描述</dd></dl>。

图片与路径

<img src="path" width="100" height="100" alt="提示文本" />
  • 相对路径:同级 img.jpg、子目录 dir/img.jpg、父目录 ../img.jpg。
  • 绝对路径:https://host/path 或 /path(服务器根)。

超链接

<a href="url" target="_blank">链接文本</a>  // 新窗口
<a href="#anchor">跳转到锚点</a>
<a name="anchor">锚点位置</a>

表格

<table border="1" cellspacing="0" cellpadding="5">
  <caption>标题</caption>
  <tr><th>表头</th><th>表头</th></tr>
  <tr><td>数据</td><td>数据</td></tr>
  <tr><td rowspan="2">跨行</td><td>数据</td></tr>
  <tr><td colspan="2">跨列</td></tr>
</table>

表单

<form action="/submit" method="post" enctype="multipart/form-data">
  <input type="text" name="username" />
  <input type="password" name="pwd" />
  <input type="radio" name="sex" value="male" checked="checked" />男
  <input type="checkbox" name="hobby" value="read" />阅读
  <select name="city"><option value="bj" selected>北京</option></select>
  <textarea name="desc" rows="5" cols="30"></textarea>
  <input type="hidden" name="token" value="abc" />
  <input type="submit" value="提交" />
  <input type="reset" value="重置" />
  <input type="button" value="普通按钮" onclick="jsFunc()" />
</form>

get 参数拼 URL,post 放请求体,更安全、无长度限制。文件上传需 enctype="multipart/form-data"。

框架(已废弃,了解即可)

<frameset rows="80,*">
  <frame name="top" src="top.html" />
  <frameset cols="120,*">
    <frame name="left" src="menu.html" />
    <frame name="right" src="main.html" />
  </frameset>
</frameset>

子页面链接 target="right" 可在右侧框架打开。

CSS 核心

引入方式(优先级由低到高)

  1. 外部链接:<link rel="stylesheet" href="style.css" />(推荐)。
  2. 内部样式:<style>...</style>。
  3. 内联样式:<div style="color:red">。
  4. @import url(...)(不推荐,阻塞加载)。

选择器

  • 标签选择器:div { color:red; }
  • 类选择器:.cls { ... } / div.cls { ... }
  • ID 选择器:#id { ... }
  • 后代选择器:div p { ... }
  • 群组选择器:div, p { ... }
  • 伪类:a:link/:hover/:active/:visited

优先级:内联 > ID > 类/伪类 > 标签 > 通配符 > 继承 > 浏览器默认。

盒模型

div { width:200px; height:100px; border:2px solid blue; padding:20px; margin:10px; }
  • border 边框,可分边设置。
  • padding 内边距(内容到边框)。
  • margin 外边距(盒子到外部)。

浮动与定位

  • float: left/right:脱离文档流,左右排列。
  • position: static/relative/absolute/fixed:relative 相对自身偏移不脱离流,absolute 相对最近定位祖先脱离流。

JavaScript 核心语法

基本类型与变量

  • var 声明(函数作用域),ES6 推荐 let/const(块作用域)。
  • 类型:string、number(无整/浮点区分)、boolean、null、undefined。
  • typeof x 检测类型。

流程控制

if/else、switch、for/while/do-while 语法同 Java,== 类型转换比较,=== 严格相等。

数组

var arr = [1, "two", true];           // 字面量
var arr2 = new Array(5);              // 长度 5
var arr3 = new Array(1,2,3);          // 元素 1,2,3
arr.push(4); arr.pop(); arr.reverse(); // 常用方法

函数

function add(a,b) { return a+b; }           // 声明式
var add2 = function(a,b) { return a+b; };   // 匿名函数表达式
var add3 = new Function("a,b", "return a+b;"); // 构造函数(少用)
// 模拟重载
function add() {
    var sum = 0;
    for (var i=0; i

作用域

  • 全局变量:<script> 顶层声明,所有脚本共享。
  • 局部变量:函数内声明,函数内可见。
  • 建议 <script> 放 </body> 前,避免 DOM 未就绪报错。

内置对象

  • String:length、charAt、indexOf、split、replace、substr/substring。
  • Array:见上。
  • Date:new Date()、toLocaleString()。
  • Math:random()、round()、max() 等静态方法。
  • 全局函数:eval(str) 执行字符串代码、parseInt/parseFloat、isNaN、encodeURI/decodeURI。

BOM(浏览器对象模型)

  • window:顶层对象,alert/confirm/prompt、open/close、定时器 setInterval/clearInterval、setTimeout/clearTimeout。
  • navigator:浏览器信息。
  • screen:屏幕分辨率。
  • location:href(获取/跳转 URL)、reload()。
  • history:back()/forward()/go(n)。

DOM(文档对象模型)

节点类型

节点nodeTypenodeNamenodeValue
元素1标签名大写null
属性2属性名属性值
文本3#text文本内容

核心 API

  • 获取:document.getElementById(id)、getElementsByName(name)、getElementsByTagName(tag)、querySelector(sel)。
  • 属性操作:elem.getAttribute(name)、setAttribute(name,val)、removeAttribute(name)。
  • 节点操作:parent.appendChild(child)、parent.insertBefore(new, ref)、parent.removeChild(child)、parent.replaceChild(new, old)、node.cloneNode(deep)。
  • 遍历:parentNode、firstChild/lastChild、nextSibling/previousSibling、childNodes(含文本节点,兼容性差,推荐 children 或 getElementsByTagName)。

innerHTML:便捷但需防 XSS

div.innerHTML = "<h1>标题</h1>"; // 解析 HTML
var html = div.innerHTML;            // 获取 HTML 字符串

经典实战案例

动态时钟

<div id="clock"></div>
<script>
setInterval(function() {
    document.getElementById("clock").innerHTML = new Date().toLocaleString();
}, 1000);
</script>

全选/反选复选框

function toggleAll() {
    var all = document.getElementById("chkAll");
    var items = document.getElementsByName("item");
    for (var i=0; i

双向选择框(省市联动)

var data = {
    "中国": ["北京","上海","广州"],
    "美国": ["纽约","洛杉矶"]
};
function loadCities(val) {
    var citySel = document.getElementById("city");
    citySel.options.length = 0; // 清空
    if (data[val]) {
        data[val].forEach(function(c) {
            citySel.add(new Option(c, c));
        });
    }
}
// HTML: <select id="country" onchange="loadCities(this.value)">...

最佳实践清单

  • HTML 语义化标签(header/nav/main/footer),利于 SEO 与无障碍。
  • CSS 采用 BEM 命名,避免全局污染;使用 Flex/Grid 布局替代 float。
  • JS 模块化(ES Module),避免全局变量污染;严格模式 'use strict'。
  • 事件委托代替大量绑定;addEventListener 替代 onclick 属性。
  • 防 XSS:动态插入 HTML 前转义,或使用 textContent 赋值纯文本。
  • 性能:减少重排重绘,批量 DOM 操作用 DocumentFragment,图片懒加载。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved