当前位置:网站首页 > Java基础 > 正文

w3c java 基础



JavaWeb入门(五)-HTML/CSS/Javascript基础


原文地址

DTD文档模型和HTML基础

是目前最流行的文档模型, 即 HTML5 模型。

常见标签的含义

表示指定文档的编码字符集为 utf-8

viewport用于配置用户入口的一些参数,主要用于设置移动端的缩放比例等参数, width指定为设备的宽度, maximum-scale用于指定缩放比例,指定为1.0时表示不允许缩放。

语义化

语义化指我们在使用HTML标签的时候要注意选择合适的标签进行表达,这样的书写方式会使得我们的html 结构清晰,逻辑分明 , 极大地方便了阅读以及日后的维护

  • -表示标题,重要性和大小依次递减。
  • 表示段落,因此在p标签内使用强制换行在语义的角度是错误的。
  • 表示重要的文本。
  • 表示强调的文本。
  • 标签表示一段斜体的文字,不过现在常用于表示一个。

常用标签

要养成多写注释的好习惯,使得html层次分明。

如:

 

这样的注释适用于无法直接通过html元素看出清晰结构的场景。

图片标签中的 alt 与 title 属性。

 

alt 属性是图片无法显示时展示的图片,而 title 是鼠标悬停时显示的文字。

a 标签的 target 属性用于指明链接打开的方式:

  • _blank 在新的窗口中打开。
  • _self 在原窗口打开。

标签是 水平分割线。

是有序列表。(ordered list)

是无序列表。 (unorderd list)

表格

一行
一个单元格
表头单元格
属性为合并行
属性为合并列

一般对于table的设计可以借助一些工具例如DreamWeaver,但现在用table来表现表格的不多见。

标签 表示内联框架,可以理解为浏览器中的浏览器

表单控件

: 所有的表单控件都要放到标签中。

控件 说明 < select > 下拉选择框 < checkBox > 多选框 < checkBoxGroup > 多选框的分组 < radio > 单选按钮 < radioGroup> 单选组 < textarea> 大面积的文本 < input type="file"> 上传文件 < fieldset> 将制定控件分组 < input type="hidden" > 不可见的input控件,但可以传值给后台 < input type="image"> 图片按钮

HTML5改良的input元素

< input type="tel"> < input type="number"> 数字类型和电话类型的输入,然而支持并不好。

< input required> 表示 该输入框要求必填。

< input autofocus> 表示自动聚焦。

< label for="input_name"> 表示点击该label文字时聚焦到控件input_name中去。


CSS基础

三种使用css的方法

  1. 行内样式
  2. 内部样式 写在< head>标签中
  3. 外部样式

CSS选择器

6种常用选择器

  • 标签选择器
 
 
 
 

页面中所有table的样式

  • 类选择器
 
 
 
 

所有btn类的样式

  • ID选择器
 
 
 
 

表示id为navBtn的样式

  • 后代继承选择器
 
 
 
 

表示类container下所有table的样式

  • 群选择器
 
 
 
 

表示container类和wrapper类都具有的样式

  • 属性选择器
 
 
 
 

表示type属性为text的input空间的样式。

  • 伪类选择器
 
 
 
 

CSS选择器的优先级

important > 内联 > Id > 类 > 属性

CSS核心模型

  • 浮动 float

让原有元素脱离正常的文档流,实现左右排列,在不设置宽度的情况下宽度会变为最小宽度。如一个div设置了浮动,那么宽度会变为最小,不再是整行。

就像排队买票,突然有人飞了起来,骑到了别人的脖子上。

  • 定位 position

relative:相对定位,指偏移后位置还在,原位置还占有文档流,偏移位置是相对原位置。

absolute:偏移后,原位置就没了,元素脱离了文档流,靠离自己最近的父容器中定位是absoute或relative的元素的位置进行偏移,一般它的父元素中并没有使用absolute/relative定位的,因此是相对整个文档< body>的偏移。

fixed: 固定定位,无论浏览器如何滚动,位置不变。

static: 默认的定位,即文档流定位。

  • 行高 line-height

normal: 默认合理行高

number: 设置数字,该数字与当前字体尺寸相乘

length: 固定行间距

%: 基于当前尺寸尺寸的百分比

inherit: 继承自父节点

  • 水平,垂直居中

text-align: center 文字居中

margin-left:auto;margin-right:auto; 也可居中

例: 用div模拟table cell的居中

 
 
 
 

注: 将一个元素宽高设置的特别大,那么它的宽度受父元素的限制,而高则不受限制。

例: 如何让一个div相对父元素居中?

 
 
 
 

CSS盒模型

此处输入图片的描述

默认元素都有自己的margin和padding,开发前如需去掉默认,那么需要以下代码:

 
 
 
 

标准/怪异盒模型

标准盒模型(W3C盒模型):

此处输入图片的描述

W3C盒模型的宽度或者高度计算方式为:width/height = content。

怪异盒模型(IE盒模型 一般用于移动端布局):

此处输入图片的描述

怪异盒模型的宽度或者高度计算方式为:width/height = content + padding + border。

如果计算一个盒子的长宽高,我们一般都是盒子本身的厚度加上盒子里的空间大小,所在在IE盒模型和W3C盒模型,我们会觉得IE盒模型更符合逻辑。

而我们利用CSS3的一个属性box-sizing:content-box | border-box | inherit, 默认值是 content-box 标准盒模型,宽度或高度仅仅限定内容的宽度和高度,盒子实际的宽度或高度为内容的宽高 + padding值 + border 值。如果值是 border-box, 则元素为怪异盒模型,宽度和高度即限定了盒子的大小,不会受到padding和border的影响。

如果页面整体使用标准/怪异盒模型,那么需要以下样式。

 
 
 
 
  • overflow是一个很有用属性,它规定了当盒子中的内容超出了盒子大小时该如何使用
  • overflow: hidden 表示超出部分隐藏,overflow: scroll表示超出部分可以用滚动条滚动。

CSS弹性盒模型

双飞翼布局


Javascript 基础

Javascript是一种 动态、弱类型、基于原型、 解释型 的语言。

变量类型

Js的变量是弱类型的,所有的变量类型都是对象,即 万物皆对象

但也可以通过typeof()可以查看具体具体类型。

一般有如下几种类型:

类型名 说明 number 数字 string 字符串 boolean 布尔值 object 对象 array 数组 function 函数 undefined 未定义

以上几种变量的声明:

 
 
 
 

js文件的引入

  • 页面中的js
 
 
 
 
  • 外部js
 
 
 
 

变量和函数的命名法

驼峰式命名法: myName, getData;

switch 语句

 
 
 
 

字符串与数组

 
 
 
 
  1. w3c java 基础

Array 对象

 
 
 
 

JS对象和函数

 
 
 
 

数值类型与数学函数

Javascript中的所有数值都是64位浮点型小数.

Js中小数计算有误差,对于精确运算要小心,如0.3/0.1 = 2.99999999999996

NaN表示非数值,它是一个值, 但 NaN != NaN,它不等于任何值,判断是否非数值要使用isNaN(value)方法

NaN做boolean运算时当做false,同 0, null, undefined, NaN, ""

isNaN(NaN)为true,是唯一为true的情况。

 
 
 
 

在原型上挂载

 
 
 
 

数学函数

常量: Math.E Math.PI

常用方法:

 
 
 
 

JS事件流

事件流的概念:在页面中接受事件的顺序。

  1. 事件冒泡:

由最具体的元素接收,然后逐级向上传至最不具体的元素节点。(文档)

  1. 事件捕获

由最不具体的元素先接收,逐级向下传至最具体的元素。

事件处理

  1. DOM 0级事件处理:把一个函数复制给一个事件处理程序属性。

 
 
 
 

这种方法的缺点是只能为事件处理程序属性绑定唯一的函数,当多次绑定时会覆盖之前的绑定。

  1. DOM2 事件处理

addEventListener("事件名", 事件处理函数, true/false);
true时事件流为捕获,由外向内,false时为事件冒泡,由内向外。默认false。
removeEventListner("事件名", 事件处理函数, true/false)

 
 
 
 

事件对象

在触发DOM事件的时候都会产生一个对象:event,它有以下常用属性:

type: 事件类型
target: 事件目标
currentTarget: 当前目标

target在事件流的目标阶段;currentTarget在事件流的捕获,目标及冒泡阶段。
只有当事件流处在目标阶段的时候,两个的指向才是一样的,而当处于捕获和冒泡阶段的时候,target指向被单击的对象而currentTarget指向当前事件活动的对象(一般为父级)。

版权声明


相关文章:

  • 递归java基础程序2024-10-18 21:18:03
  • javascript是以JAVA为基础吗2024-10-18 21:18:03
  • java的io流基础2024-10-18 21:18:03
  • 花溪区java基础知识2024-10-18 21:18:03
  • java基础编程游戏2024-10-18 21:18:03
  • java程序开发基础答案解析2024-10-18 21:18:03
  • 零基础学Java(第3版)2024-10-18 21:18:03
  • java基础计算方法2024-10-18 21:18:03
  • java小程序最基础骂人的2024-10-18 21:18:03
  • java基础做胎教2024-10-18 21:18:03