HTML(CSS,JS) 部分標籤功能及簡單網頁編寫

1)html的簡單介紹

首先我們知道,Web工程是由兩部分組成的:瀏覽器部分、web服務器部分,而其中瀏覽部分就是以頁面的形式呈現的。還由於web工程是基於網絡的,而能夠接入廣域網的終端有很多種,爲了保證用戶能夠正常使用瀏覽器,就需要讓不同的硬件和不同的操作系統都能夠解析和識別頁面信息,而瀏覽器能夠對ASCII碼形式的網頁進行識別和操作。所以,前段頁面總是以純ASCII碼進行編寫的,不存在編譯問題。

HTML的英文全稱是 Hyper Text Marked Language,即超文本標記語言。它包括一系列標籤.通過這些標籤可以將網絡上的文檔格式統一,使分散的Internet資源連接爲一個邏輯整體,這些是我在百度百科看到的名詞解釋。實際上,html是一種XML格式的文件,且是文本文件。html現在已經發展到了第6版本,而在html1-4版本中,因爲瀏覽器的差異,存在很大的兼容性問題。到了html5版本,增加了大量的語義性很強的標籤和高複雜度標籤。

2)前端頁面的內容

前端頁面的內容分爲三類:
1、數據:基本上是由標籤+數據
2、樣式:CSS,用來修飾、控制數據的顯示特點
3、響應:javascript,面向事件的編程

·CSS

CSS:層疊樣式表(英文全稱:Cascading Style Sheets)是一種用來表現HTML或XML等文件樣式的計算機語言。CSS不僅可以靜態地修飾網頁,還可以配合各種腳本語言動態地對網頁各元素進行格式化。CSS 能夠對網頁中元素位置的排版進行像素級精確控制,支持幾乎所有的字體字號樣式,擁有對網頁對象和模型樣式編輯的能力。

樣式是可以覆蓋的,順序是:
外部樣式、內部樣式 -> 行間樣式
外部樣式和內部樣式按照前後順序,後者覆蓋前者,書寫順序決定覆蓋順序。

·JS(javascript)

JavaScript是一種屬於網絡的腳本語言,代碼不進行預編譯,通常JavaScript腳本是通過嵌入在HTML中來實現自身的功能的,也就是用來完成頁面的事件響應,可以直接嵌入HTML頁面,也可以單獨寫成.js文件。

JavaScript腳本語言同其他語言一樣,有它自身的基本數據類型,表達式和算術運算符及程序的基本程序框架,可以跨平臺使用,支持多種瀏覽器操作。

3)簡單頁面編寫

目標是做一個關於表格的簡單頁面,效果如下:
在這裏插入圖片描述
首先新建一個txt文本文檔,重命名爲##.html,用編程軟件打開進行代碼編寫(可以用Sublime工具),具體的代碼實現如下,這是html代碼,裏面嵌入了CSS文件和JS文件;

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>一個表格頁面</title>
		<link rel="stylesheet" type="text/css" href="./css/index.css">
	</head>
	<body id="res" background = "./res/小北01.jpg">
		<table id="table">
			<caption id="login">註冊信息</caption>
			<thead>
				<tr>
					<td class="celLeft">賬號</td>
					<td class="celRight">
						<input class="txtWidth" type="text" name="id"
						placeholder="長度在2到6個字符之間">
					</td>
				</tr>
				<tr>
					<td class="celLeft">密碼</td>
					<td class="celRight">
						<input class="txtWidth" type="password" name="password"
						placeholder="不能使用特殊字符">
					</td>
				</tr>
				<tr>
					<td class="celLeft">性別</td>
					<td class="celRight">
						<input id="sexMale" type="radio" name="sex"
						checked="true">
						<label for="sexMale"></label>
						<input id="sexFemale" type="radio" name="sex">
						<label for="sexFemale"></label>
					</td>
				</tr>
				<tr>
					<td class="celLeft">出生日期</td>
					<td class="celRight">
						<select id="birthYear"></select>
						<label></label>
						<select id="birthMonth"></select>
						<label></label>
						<select id="birthDate"></select>
						<label></label>
					</td>
				</tr>
				<tr>
					<td class="celLeft">愛好</td>
					<td id="hobbies" class="celRight">
						<input id="beisi" type="checkbox" name="hobby" value="貝斯">
						<label for="beisi">貝斯</label>
						<input id="jita" type="checkbox" name="hobby" value="吉他">
						<label for="jita">吉他</label>
						<input id="shufa" type="checkbox" name="hobby" value="書法">
						<label for="shufa">書法</label>
						<input id="jiewu" type="checkbox" name="hobby" value="街舞">
						<label for="jiewu">街舞</label>
						<br>
						<input class="txt" id="all" type="button" value="全選">
						<input class="txt" id="none" type="button" value="清空">
						<input class="txt" id="rev" type="button" value="反選">
					</td>
				</tr>
				<tr>
					<td colspan="2">
						<input class="submit" id="finish" type="submit" value="提交信息">
					</td>
				</tr>
			</thead>
		</table>
	</body>
	<script type="text/javascript" src="./js/index.js"></script>
</html>

對了,在這裏我添加了背景圖片的設置,是之前我在網上看到的方法,在body標籤中加入 background = “##.jpg”,也需要註明圖片的路徑,之後再CSS文件中寫了有關背景圖片的尺寸大小的設置,但網上有人說在這種方法已經過時了,有另外的添加背景圖片的方法,我目前還不太清楚,對於別的插入背景圖片的方法,還正在學習,之後如果有更適合的方法,會持續更改。

CSS代碼;(相關解釋在代碼中註釋)

#table {
	margin: 0 auto;//設置爲水平居中
	font-size: 20px;//字體大小
	width: 450px;//相對寬度
}

#login{
	font-size: 32px;
	color: #810310;//顏色設置
}
.txtWidth{
	width: 95%;
	height: 70%;
}
.celLeft{
	background: pink;//背景顏色
	width: 28%;
	height: 45px;
	text-align: center;//字體位置爲居中
}
.celRight{
	background: pink;
	height: 45px;
	text-align: center;
}
.txt{
	font-size: 18px;
}
.submit{
	font-size: 20px;
	display: block;
	margin: 0 auto;
}
#res {
	background-size:90%;//背景圖片的尺寸
}

關於CSS還有一些需要說明,就是裏面class和id的使用:

1、首先在語法上有區別,id對應的css是用樣式選擇符“#”(井號),class對應的css是用樣式選擇符“.”(英文半角輸入句號)。
2、其次,使用方面也有區別:class可以在頁面裏面重複使用,id由於在頁面裏面只能出現一次,所以不能重複使用,所以儘量用class來寫,這樣能在頁面裏面重複引用你寫的css,減小工作量和代碼量。
3、還有一點,由於id是頁面中唯一的,更多的是定義來留給給頁面裏面的javascript用,用以完成某個id對於的事件的響應。

javascript代碼

(主要添加了出生日期和愛好選擇的事件響應,這裏的var就相當於C語言中的變量類型)

//有關出生日期的年月日初始化
var birthYear = document.getElementById("birthYear");
var now = new Date();
var nowYear = now.getFullYear();
var minYear = nowYear - 30;
var maxYear = nowYear - 12;
for(var year = minYear ; year <= maxYear; year ++) {
	var option = document.createElement("option");
	option.text = year;
	option.value = year;
	birthYear.append(option);
}

var birthMonth = document.getElementById("birthMonth");
var monthHtml = "";
for(var month = 1 ; month <= 12 ; month++) {
	monthHtml += "<option>";
	monthHtml += month;
	monthHtml += "</option>";
}
birthMonth.innerHTML = monthHtml;

birthYear.onchange = function() {
	 var year = birthYear.value;
	 var month = birthMonth.value;
	 setBirthDate(year, month);
}

birthMonth.onchange = function() {
	 var year = birthYear.value;
	 var month = birthMonth.value;
	 setBirthDate(year, month);
}

//根據年和月的選擇結果來初始化日期的值
var birthDate = document.getElementById("birthDate");
function setBirthDate(year, month) {
	var maxData = new Date(year,month,0);
	var lastDate = maxData.getDate();
	for(var data = 1 ; data <= lastDate ; data ++) {
		var option = document.createElement("option");
		option.text = data;
		option.value = data;
		birthDate.append(option);
	}
}
setBirthDate(birthYear.value, birthMonth.value);

//有關愛好選擇按鈕的事件響應
var hobbies = document.getElementsByName("hobby");
var all = document.getElementById("all");
var none = document.getElementById("none");
var rev = document.getElementById("rev");

function setHobbies(value) {
	for(var index = 0 ; index < hobbies.length ; index ++) {
		hobbies[index].checked = value;
	}
}

all.onclick = function() {
	setHobbies(true);
}

none.onclick = function() {
	setHobbies(false);
}

rev.onclick = function() {
	for(var index = 0 ; index < hobbies.length ; index ++) {
		hobbies[index].checked = !hobbies[index].checked;
	}
}

這裏需要說明的是CSS文件和JS文件在HTML文件中的嵌入,方法如下(需要註明要嵌入文件的路徑):

<link rel="stylesheet" type="text/css" href="./css/index.css">
<script type="text/javascript" src="./js/index.js"></script>

最後,在建立的##.html文件,單擊右鍵,選擇打開方式爲用瀏覽器打開,就會看到關於頁面的編寫結果了;
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章