html+css的简单了解_html css-程序员宅基地

1.什么是前端

前端对于网站来说,通常是指,网站的前台部分包括网站的表现层和结构层。因此前端技术一般分为前端设计和前端开发,前端设计一般可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括基本的HTMLCSS以及JavaScript/ajax,现在最新的高级版本HTML5CSS3,以及SVG等。

2.什么是html

HTML的全称是Hyper Text Mark-up Language,超文本标记语言。

超文本:页面内可以包含图片、链接,甚至音乐、程序等非文字元素。

标记:与之相对是的编译型语言,标记型语音无需编译,直接可以被解析展示。

特点

可以设置文本的格式,比如

可以创建列表标题、字号、文本颜色、段落等等

可以插入图像和媒体

可以建立表格

超链接,可以使用鼠标点击超链接来实现页面之间的跳转

 

headtitlemeta标签

head:用来包含文件的基本信息,比如网页的标题、关键字。

  <head></head>内可以放<title></title><meta></meta><style></style>等等标记

  注意:在<head></head>标记内的内容不会在浏览器中显示

title:显示在浏览器的窗口的左上角的标题

meta:页面的元信息(meta-information

常见的属性:authorkeywordsdescription

注意:meta标记必须放在head元素里面

 

body标签

bodyHTML文档的主体标记,<body>...</body>是网页的主体部分,在此标记之间可以包含如<p></p><h1></h1><br/><hr/>等等标记,正是由这些内容组成了我们所看见的网页

body标记的常见属性

bgcolor:设置背景颜色

text:设置文本颜色

link:设置连接颜色

vlink:已经访问了的链接颜色

alink:正在被点击的链接颜色

 

文本标签

<hn>:标题标记,n的范围1~6,不同级别对应显示大小不同的标题,h1最大

<font>字体设置标记,三个常用属性size,color,face(字体)

<b>:粗字体标记

<i>:斜字体标记

<sub>:文字下标字体标记

<sup>:文字上标字体标记

<tt>:打印机字体标记

<cite>:引用方式的字体,通常是斜体

<em>:表示强调,通常显示为斜体字

<strong>:表示强调,通常显示为粗体字

<small>:小型字体标记

<big>:大型字体标记

<u>:下划线字体标记

格式标签

<br>:强制换行标记,让后面的文字、图片、表格等等,显示在下一行

<p>:换段落标记,由于多个空格和回车在HTML中会被等效为一个空格,HTML要换段落用<p>

<center>:居中对齐标记,让段落或者是文字相对于父标记居中显示

<pre>:预格式化标记

<li>:列表项目标记,配合<ul><ol>使用,可以嵌套使用

<ul>:无序列表标记

<ol>:有序列表标记,属性:type="1/A/a/I/i",value="指定序列数字起始值"

<hr>:水平分割线标记

<dl>:定义型列表,配合<dt><dd>使用

<div>:分区显示标记,也称之为层标记

 

<img/>:图像标签

 

常用属性:

src:指定我们要加载的图片的路径和图片的名称以及图片格式

width:指定图片的宽度,单位pxemcmmm

height:指定图片的高度,单位pxemcmmm

border:指定图标的边框宽度,单位pxemcmmm

alt:三个作用:

1.当网页上的图片被加载完成后,鼠标移动到上面去,会显示这个图片指定的属性文字

2.如果图像没有下载或者加载失败,会用文字来代替图像显示

3.搜索引擎可以通过这个属性的文字来抓取图片

 

注意:

<img>为单标记,不需要使用</img>闭合

在加载图像文件的时候,文件的路径或者文件名文件格式错误,将无法加载图片

 

<a>:超链接标签

<a href="" target="打开方式" name="页面锚点名称" >链接文字或者图片</a>

 

常用属性:

href:链接的地址,链接的地址可以是一个网页,也可以是一个视频、图片、音乐等等

 

target:定义超链接的打开方式

_blank:在一个新的窗口中打开链接

_seif(默认值):在当前窗口中打开链接

_parent/_top:在父窗口/顶层窗口中打开页面(框架中使用较多)

 

name:指定页面的锚点名称(访问定义好的锚点,连接需要加#

可以包围在Img标签外部,让img有链接作用

 

表格使用结构

<table> :表格

<caption></caption> :表名称

<tr> :表格的一行

<th></th><th></th> :表格的两个单元格,th表示列名单元格

</tr>

<tr>

<td></td><td></td> :表格的两个单元格,td表示普通单元格

</tr>

<table>

表格属性

width:表示表格的宽度,他的值可以是像素(px)也可以是父级元素的百分百(%

height:表示表格的高度,他的值可以是像素(px)也可以是父级元素的百分百(%

border:表示表格外边框的宽度

align:表格的显示位置(left,center,right)

cellspacing:单元格之间的间距,默认是2px,单位像素

cellpadding:单元格内容与单元格边框的显示距离,单位像素

frame:控制边框最外层的四条框void,above,below,hsides,lhs,rhs,vsides,box,border

rules:控制如何显示单元格内边框none,groups,rows,cols,all

bgcolor:表格的背景颜色

 

<td><th>都是单元格的标记,其必须嵌套在<tr>标签内,是成对出现

两者的区别

<th>是表头标记,通常位于首行或者首列,<th>中的文字默认会被加粗,而<td>不会

<td>是数据标记,表示该单元格的具体数据

共同之处

两者的标记属性都是一样的

bgcolor:设置单元格背景

align:设置单元格对齐方式

valign:设置单元格垂直对齐方式

width:设置单元格宽度

height:设置单元格高度

rowspan:设置单元格所占行数

colspan:设置单元格所占列数

 

form

<form></form>定义表单的开始位置和结束位置,表单提交时的内容就是<form>表单中的内容

常用属性

name:表单名称

method:传送数据的方式,分为postget两种方式

get方式:get方式提交时,会将表单的内容附加在URL地址的后面,所以限制了提交的内容的长度,不超过8192个字符,且不具备保密性

post方式提交时,将表单中的数据一并包含在表单主体中,一起传送到服务器中处理,没有数据大小限制

action:表单数据的处理程序的URL地址

enctype:设置表单的资料的编码方式

target:和超链接的属于类似,用来指定目标窗口

 

input

input常用表单类型,具体类型根据type参数决定

常用属性

type:多种类型,如下

text:默认值,表示文本框

password:密码框

submit:提交按钮

button:普通按钮

radio:单选按钮,可以使用cheked属性来设置默认选中项

checkbox:复选按钮,可以使用cheked属性来设置默认选中项

hidden:隐藏域,用于某些数据无需展示,但是可能需要提交到后台使用

name:定义控件的名称,很重要,以键值对提交数据时,该name就是key

value:初始化值,打开浏览器时,文本框中的内容,编辑修改后,value也会变化

size:设置控件的长度

maxlength:输入框中最大允许输入的字符数

 

select下拉列表

格式

<select name='name' size='size' multiple>

    <option value='value1' selected>选项1</option>

    <option value='value2'>选项2</option>

</select>

属性

multiple:表示用可以多选的下来列表,如果没有这个属性就只能单选

size:设置列表的高度

name:定义这个列表的名称,以键值对提交数据时,该name就是key

option标签

value:给选项赋值,指定传送到服务器上面的值(键值对中的value

selected:指定默认的选项

 

textarea多行文本域

属性

rows:显示的行数,单位是字符个数

cols:显示的列数,单位是字符个数

 

frameset

框架将浏览器划分成不同的部分,每一部分加载不同的网页,实现在同一浏览器窗口中加载多个页面的效果

常用属性

cols

使用“像素数”和%分割左右窗口,“*”表示剩余部分

使用*”,“*”表示框架平均分成2

使用*”,“*”,“*”表示框架平均分成3

rows:使用“像素数”和%分割上下窗口,“*”表示剩余部分

frameborder:指定是否显示边框,0不显示,1显示

border:设置边框的大小,默认值5像素

frame

<frame>子窗口标签

是一个单标记,

必须放在<frameset>中使用

<frameset>中设置了几个窗口,就必须对应使用几个<frame>框架

使用src属性指定一个网页。

常用属性:

src:加载网页文件的URL地址

name:框架名称,是链接标记的target所要参数

noresize:表示不能调整框架大小,没有设置时就可以调整,参数值为noresize

scrolling:是否需要滚动条,可选autoyesno

frameborder:是否需要边框可选1显示边框,0不显示边框

 


 

 

3. 什么是css

CSS 指层叠样式表 (Cascading Style Sheets),是为了解决内容与表现分离的问题。

 

<body bgcolor='red'></red>

body为内容

bgcolor为表现

 

第一种定义css的方式:内链样式表

<body bgcolor="red" >

<body style="background-color: red" >

但是这种方式还是没有将内容和表现分离

 

第二种定义css的方式:嵌入式样式表

<style type="text/css"></style>

需要将样式放在<head></head>

<body bgcolor="yellow" >

<style type="text/css">

        body{background-color:yellow}

</style>

 

但是这种方式还是没有将内容和表现完全分离

 

第三种定义css的方式:引入式样式表

<link rel="StyleSheet" type="text/css" href="style.css">

style.css

        body{background-color:yellow}

这种方式完全将内容和表现完全分离

 

选择器

通过选择器,我们可以定位到css样式需要修饰的目标,常用的选择器有:

<p id='p1' class='c1'>选我啊,选我啊</p>

标签选择器p{color:red}

类选择器.c1{color:red}

ID选择器#p1{color:red}

组合选择器如果有多个类型选择器使用同一种样式p,.p1,#c1,h1,h2,h2{color:red}

伪元素选择器a:link{color:black}a:hovera:activea:visited

 

优先级问题

ID>>标签

<p id='p1' class='c1'>选我啊,选我啊</p>

#p1{color:red}

.c1{color:blue}

p{color:yellow}

同级时选择离元素最近的一个

 

div,span

DIVSPAN在整个HTML标记中,没有任何意义,他们的存在就是为了应用CSS样式,DIVspan的区别在与,span是内联元素,div是块级元素。

    <style type="text/css">

       div{

           background-color: green;

       }

        span

        { background-color: green; }

    </style>

 

<div>华信教育</div>同时可以定义其宽度

<span>华信教育</span>单独定义其宽度,没有效果

 

盒模型

 

布局相关的属性

 

布局相关的属性

display

displaynone 层不显示

displayblock 块状显示,在元素后面换行,显示下一个块元素

displayinline 内联显示,多个块可以显示在一行内

block相当于将span转化为divinline相当于将div转化为span

float

left :左浮动

right:右浮动

clearleft/right/both清除浮动

<div sytle='float:left'></div>

<div sytle='float:left'></div>

<div sytle='clear:both'></div>//添加这个div,可以屏蔽前一个divfloat影响到后面的div

<div></div>

overflow 溢出处理

hidden 隐藏超出层大小的内容

scroll无论内容是否超出层大小都添加滚动条

auto 超出时自动添加滚动条

 

 

 

 

 

 

 

4. 4.什么是JavaScript

JavaScriptNetScape公司为Navigator浏览器开发的,是写在HTML文件中的一种脚本语言,能实现网页内容的交互显示。当用户在客户端显示该网页时,浏览器就会执行JavaScript程序,用户通过交互的操作来改变网页的内容,来实现HTML语言无法实现的效果。

 

如果将网页比作模特

HTML表示模特自身

CSS表示模特的服装修饰

JS则结合模特自身和修饰达到动态,表示模特的动作。

使用

通过<script></script>中直接编写

 

通过<script src='目标文档的URL'></script>链接外部的Js文件

 

作为某个元素的事件属性值或者是超链接的href属性值

 

常用事件

onchange HTML 元素改变

Onclick 用户点击 HTML元素

Onmouseover 用户在一个HTML元素上移动鼠标

Onmouseout 用户从一个HTML元素上移开鼠标

Onkeydown 用户按下键盘按键

Onload 浏览器已完成页面的加载

 

DOM了解

当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model

常见用法

查找 HTML 元素

getElementsByTagName

getElementsByName

getElementById

创建节点

createElement

createTextNode

appendChild

删除节点

removeChild

 

一个简单的js例子

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			//验证姓名,密码是否为空
			function checkUserName(){
				var name = document.getElementById("userName"); //获取id为username的元素
				var name1 = document.getElementById("nameEmpty");//获取id为nameEmpty的元素
				if(name==null||""==name.value){
					name1.style.display="inline";//当name为空提示
				}else{
					name1.style.display="none";//不提示
				}
			}
			function checkpwd(){
				var name = document.getElementById("password");//获取id为password的元素
				var name1 = document.getElementById("pwdEmpty");//获取id为pwdEmpty的元素
				if(name==null||""==name.value){
					name1.style.display="inline";//当name为空提示
				}else{
					name1.style.display="none";//不提示
				}
			}
			
			//验证用户信息
			function checkuser(){
				var name = document.getElementById("userName");//获取id为username的元素
				var pwd = document.getElementById("password");//获取id为password的元素
				if(name==null||""==name.value){
					alert("名字不为空");//提示框
					return false;
				}if(pwd==null||""==pwd.value){
					alert("密码不为空");
					return false;
				}
				return true;
			}
			
			//全选
			οnlοad=function(){
				var checkbox = document.getElementById("checkbox");//获取id为checkbox的元素
				checkbox.οnclick=function(){
					var checkbox1 = document.getElementsByClassName("checkbox1");//获取class为checkbox1的元素组
				for (var i=0;i<checkbox1.length;i++) {
					checkbox1[i].checked=checkbox.checked;//设置checked属性
				}
				}
			};
			function addUser(){
				var userName = document.getElementById("userName");//获取id为username的元素
				var age = document.getElementById("age");//获取id为age的元素
				var place = document.getElementById("place");//获取id为place的元素
				var place1 = document.getElementById("place1");//获取id为place1的元素
				
				var table = document.getElementById("table");//获取id为table的元素
				var tr = document.createElement("tr");//创建元素
				var td = document.createElement("td");//创建元素
				var td1 = document.createElement("td");//创建元素
				var td2 = document.createElement("td");//创建元素
				var td3 = document.createElement("td");//创建元素
				var chbox = document.createElement("input");//创建元素
				chbox.setAttribute("type","checkbox");//设置属性
				chbox.setAttribute("class","checkbox1");//设置属性
				var name = document.createTextNode(userName.value);//创建文本节点
				var age = document.createTextNode(age.value);//创建文本节点
				//获取选中的省
				var Index = place.selectedIndex;
				var text = place.options[Index].text;
				//获取选中的市
				var Index1 = place1.selectedIndex;
				var text1 = place1.options[Index1].text;
				var place = document.createTextNode(text+text1);//创建文本节点
				td.appendChild(chbox);//添加子元素
				td1.appendChild(name);//添加子元素
				td2.appendChild(age);//添加子元素
				td3.appendChild(place);//添加子元素
			    tr.setAttribute("class","tr");//设置属性
				tr.appendChild(td);//添加子元素
				tr.appendChild(td1);//添加子元素
				tr.appendChild(td2);//添加子元素
				tr.appendChild(td3);//添加子元素
				table.appendChild(tr);//添加子元素
			
			}
			//隔行换色
			function changeColor(){
				var trDom = document.getElementsByClassName("tr");//获取class为tr的元素组
				for (var i=0;i<trDom.length;i++) {
					if(i%2==0){
						trDom[i].style.backgroundColor="green";//设置背景颜色
					}
					else if(i%2==1){
						trDom[i].style.backgroundColor="greenyellow";//设置背景颜色
						
					}
				}
				
				
			}
			//地方切换
			var hnArray = ["长沙市","衡阳市","益阳市"];
			var hbArray = new Array("黄冈","武汉","襄阳");
			var gxArray =["桂林市","南宁市","钦州市"];
			function changePlace(s){
				var pResult = s.value;
				var Dom = document.getElementById("place1");
				Dom.innerHTML="<option value='000'>请选择</option>";//重置市名称
				if(pResult=="001"){
					for (var i=0;i<hnArray.length;i++) {
						Dom.innerHTML+="<option value="+i+">"+hnArray[i]+"</option>";//追加插入市数组内容
					}
				}else if(pResult=="002"){
					for (var i=0;i<hbArray.length;i++) {
						Dom.innerHTML+="<option value="+i+">"+hbArray[i]+"</option>";
					}
				}else if(pResult=="003"){
					for (var i=0;i<gxArray.length;i++) {
						Dom.innerHTML+="<option value="+i+">"+gxArray[i]+"</option>";
					}
				}
			}
		</script>
		
	</head>
	<body>
		<form  action="#" οnsubmit="return checkuser()">
			姓名:<input id="userName" type="text" size="10"/ οnblur="checkUserName()"><!--失焦onblur-->
			<span style="display: none;"  id="nameEmpty" ><font color="red";size="2">姓名不能为空</font> </span>
			<br />
			密码:<input id="password" type="password" size="10"/οnblur="checkpwd()">
			<span  style="display: none;" id="pwdEmpty" ><font color="red";size="2">密码不能为空</font> </span><br />
			年龄:<input id="age" type="text" size="10"/><br />
			性别:<input type="radio" name="sex" />男<input type="radio" name="sex"/>女<br />
			籍贯:省<select id="place" οnchange="changePlace(this)"><!--onchange选项改变-->
				    <option value="000">请选择</option>
				    <option value="001">湖南</option>
				    <option value="002">湖北</option>
				    <option value="003">广西</option>
			</select>
			             市<select id="place1">
			        <option value="000">请选择</option>    
			        
			       </select><br />
			             
			              
			    <input type="submit" value="注册" />   
			    <input type="reset" />
		</form>
		<button οnclick="addUser();changeColor()">添加</button>
			<table id="table" border="1" width="400px" style="text-align: center;">
				<tr>
					<th><input type="checkbox" id="checkbox"/>全选</th>
					<th>姓名</th>
					<th>年龄</th>
					<th>籍贯</th>
				</tr>
				
			</table>
		
	</body>
</html>



 

 

 

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ITnewpig/article/details/78946477

智能推荐

高职对计算机课程要求,关于提高高职高专计算机专业课程教学效果的尝试论文...-程序员宅基地

文章浏览阅读74次。关于提高高职高专计算机专业课程教学效果的尝试论文摘要:为有效提高高职高专计算机专业课程的教学效果,笔者对高职高专计算机专业课的教学进行了一些教学尝试,本文分别从课前预习、课后复习及实验考核这几方面进行教学尝试的介绍。关键词:课前预习,课后复习,多媒体教学在我们学校,绝大部分的课程都实行理论课和实践课相结合的形式授课,其中理论课是以大班的形式上,人数一般在100以上;而实践课则以小课的形式上,人数一..._对专业课程提高要求

spark在windows系统本地运行_分布式作业系统 Elastic-Job-Cloud 源码分析——本地运行模式...-程序员宅基地

文章浏览阅读95次。摘要: 原创出处 http://www.iocoder.cn/Elastic-Job/cloud-local-executor/ 「芋道源码」欢迎转载,保留摘要,谢谢!本文基于 Elastic-Job V2.1.5 版本分享1. 概述2. 配置3. 运行666. 彩蛋1. 概述本文主要分享 Elastic-Job-Cloud 本地运行模式,对应《官方文档 —— 本地运行模式》。有什么用呢?引用官方..._windows运行elastic-job

python 3.6.0新语法_Python 3.6.0语法错误“print”调用中缺少括号-程序员宅基地

文章浏览阅读83次。我是一个游戏玩家,他决定做一些其他人可以玩的基本游戏。我对编码很陌生,对它有最基本的理解。我和我的堂兄正试图在Python3.6.0中制作一个基于文本的游戏。我们在网上搜索问题的答案,但什么也找不到。代码如下:def start ():print ''' Welcome to the game! Created by Meme Buddhatype 'start' to begin'''print..._python3.6编程不能识别print

Python实现贝叶斯优化器(Bayes_opt)优化循环神经网络分类模型(LSTM分类算法)项目实战_python 贝叶斯优化lstm-程序员宅基地

文章浏览阅读2.1k次,点赞3次,收藏19次。Python实现贝叶斯优化器(Bayes_opt)优化循环神经网络分类模型(LSTM分类算法)项目实战_python 贝叶斯优化lstm

为什么Python 3.6以后字典有序并且效率更高?_python 3.6 字典 为何有序-程序员宅基地

文章浏览阅读130次。在Python 3.5(含)以前,字典是不能保证顺序的,键值对A先插入字典,键值对B后插入字典,但是当你打印字典的Keys列表时,你会发现B可能在A的前面。但是从Python 3.6开始,字典是变成有顺序的了。你先插入键值对A,后插入键值对B,那么当你打印Keys列表的时候,你就会发现B在A的后面。不仅如此,从Python 3.6开始,下面的三种遍历操作,效率要高于Python 3.5之前..._python 3.6 字典 为何有序

linux系统中硬盘及分区如何命名,Linux下硬盘和分区的命名方法详细介绍-程序员宅基地

文章浏览阅读2k次。在Linux下对IDE的设备是以hd命名的,一般主板上有两个IDE接口,一共可以安装四个IDE设备。主IDE上的主从两个设备分别为hda和hdb,第二个IDE口上的两个设备分别为hdc和hdd。一般硬盘安装在主IDE的主接口上,所以是hda。SCSI接口设备是用sd命名的,第一个设备是sda,第二个是sdb。依此类推 。分区是用设备名称加数字命名的。要完全了解Linux硬盘分区名称的规则,你必须先..._linux系统盘叫sma

随便推点

Win10下安装Sql Server反复提示需安装.NET Framework 3.5 SP1的解决-程序员宅基地

文章浏览阅读2.4k次。win10中安装net framework 3.5,首先需要你下载win10原版系统,把原版iso系统加载到虚拟光驱,如下图所示,你电脑中就多了个分区。(我的电脑中多了个G盘)然后这时候,win+R打开命令然后输入cmd 回车确认,接着复制粘贴1.Dism /online /enable-feature /featurename:NetFX3 /All /Source:G:\sources\sx..._需要net3.5sp1

五大类选择器-程序员宅基地

文章浏览阅读3.9k次。一、基本选择器1、html里的标签2、class选择器3、id选择器4、*通配符5、群组选择器二、属性选择器1、[属性]2、[属性=属性值]3、[属性~=属性值]4、其他 ^ $ * |三、层级选择器1、子代、后代选择器2、兄弟选择器四、元素选择器1、::after2、::before3、::first-line4 、::first-letter5、::selection五、伪类选择器1、结构伪类选择器:first-.._类选择器

关于W制式下的状态介绍,CELL_PCH/CELL_FACH/CELL_DCH等_dch pch fach-程序员宅基地

文章浏览阅读1.9k次。UMTS Quick Reference Go Back To Index Home : www.sharetechnote.com RRC State Change 'RRC State' refer to various different phases in which UE/Netw_dch pch fach

GoLand配置-程序员宅基地

文章浏览阅读229次。1.go 安装2.Goland安装3.GoLand激活使用防火墙关闭Goland的进出站。搜索激活码填入。4.开启file watch,go fmt在ctrl+S保存后自动格式化代码,goimports在代码里引入包goland会自动下载。5.新建工程时,要指定代理。6.调整自己喜欢的字体风格。..._goland 通过防火墙

mysql IS NULL 使用索引_mysql is null走索引吗-程序员宅基地

文章浏览阅读9.9k次,点赞15次,收藏35次。简介mysql的sql查询语句中使用is null、is not null、!=对索引并没有任何影响,并不会因为where条件中使用了is null、is not null、!=这些判断条件导致索引失效而全表扫描。mysql官方文档也已经明确说明is null并不会影响索引的使用。MySQL can perform the same optimization on col_name IS ..._mysql is null走索引吗

Node.js笔记:SerialPort(串口)模块使用(基于10.x.x)_js serialport-程序员宅基地

文章浏览阅读8.6k次,点赞12次,收藏54次。Node.js串口模块使用_js serialport