HTML与CSS基础学习

HTML基础的文档树

<!DOCTYPE html>    # 告诉浏览器使用什么样的html或xhtml规范解析html文档
<html lang="en">    # html部分
<head>                    # 头部信息,head头部信息内容不会被浏览器解析显示到网页
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>                     # 主体部分,这里定义的内容将会被浏览器解析显示到网页

</body>
</html>

块级标签与内联标签

块级标签:

  不管块级标签中内容多少,总是占一行空间。

内联标签:

  标签内容有多少,占用多少

会计标签与内联标签主要区别:

  1. 块元素,总是在新行上开始;内联元素,和其他元素都在一行上。 
  2. 块元素,能容纳其他块元素或内联元素;内联元素,只能容纳文本或者其他内联元素。 
  3. 块元素中高度,行高以及顶和底边距都可控制;内联元素中高,行高及顶和底边距不可改变。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <!--块级标签-->
    <div style="background-color: red;">123</div>
    <!--内联标签-->
    <span style="background-color: green">123</span>
</body>
</html>

demo

P标签与br标签

# p标签,表示段落,默认的情况下仅仅多一些行距
<body>
    <p>xxxx</p>
    <p>oooo</p>
</body>

# 而br标签为换行
<body>
    <p>xx<br/>xx</p>
    <p>oooo</p>
</body>

a标签

# 当前页面跳转
<a href="http://www.baidu.com">百度</a>

# 新tab页面跳转
<a href="http://www.bing.com">bing</a>
# 锚点跳转
<body>
    # 定义a标签,当点击时跳转到id为i1的标签
    <a href="#i1">第一章</a>
    <a href="#i2">第二章</a>
    <a href="#i3">第三章</a>

    # 为div标签增加id为i1,且为了展示效果,给这个div一个高500px
    <div id="i1" style="height: 500px">第一章内容</div>
    <div id="i2" style="height: 500px">第二章内容</div>
    <div id="i3" style="height: 500px">第三章内容</div>
</body>

input标签

一个完整表单html demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <!--如果表单中有文件的提交,form标签中必须存在enctype="multipart/form-data"属性-->
    <form action="http://192.168.11.88:8000/index/" method="post" enctype="multipart/form-data">
        <!--用户名密码-->
        <input type="text" name="eason" />
        <input type="password" name="pwd" />
        <!--性别单选-->
        <!--配置name为相同,则两个radio互斥-->
        <!--男和女在提交时并不会提交这两个内容,所以增加value,如果选择男提交value=1,女则提交value=0-->
        男<input type="radio" name="gender" value="1" />
        女<input type="radio" name="gender" value="0" />
        <!--复选框-->
        <p>
            篮球<input name="favor" type="checkbox" value="1" />
            足球<input name="favor" type="checkbox" value="2" />
            台球<input name="favor" type="checkbox" value="3" />
        </p>
        <!--文件上传,要配合form标签中的enctype-->
        <p>文件
            <input type="file" name="hahaha" />
        </p>
        <p>
            <select name="city">
                <option value="1">上海</option>
                <option value="2">广州</option>
                <option value="3">北京</option>
            </select>
        </p>
        <p>
            备注:<textarea name="extra"></textarea>
        </p>
        <!--提交表单(form)-->
        <input type="submit" value="sumbmit" />
    </form>
</body>
</html>

ul(无序列表)与ol(有序列表)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <ul>
        <li>xxxxx</li>
        <li>xxxxx</li>
        <li>xxxxx</li>
        <li>xxxxx</li>
    </ul>
    <ol>
        <li>qqqqq</li>
        <li>qqqqq</li>
        <li>qqqqq</li>
        <li>qqqqq</li>
    </ol>
    <dl>
        <dt>DT</dt>
        <dd>dd</dd>
        <dd>dd</dd>
        <dd>dd</dd>
        <dt>DT</dt>
        <dd>dd</dd>
        <dd>dd</dd>
        <dd>dd</dd>
    </dl>
</body>
</html>

table标签

    <table>
        <thead>
            <tr>
                <!--th加粗-->
                <th>第一列</th>
                <th>第二列</th>
                <th>第三列</th>
                <th>第四列</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>第一列</td>
                <td>第二列</td>
                <td>第三列</td>
                <td>第四列</td>
            </tr>
            <tr>
                <td>第一列</td>
                <td>第二列</td>
                <td>第三列</td>
                <td>第四列</td>
            </tr>
            <tr>
                <td>第一列</td>
                <td>第二列</td>
                <td>第三列</td>
                <td>第四列</td>
            </tr>
        </tbody>

    </table>

<!DOCTYPE html>
<!--合并单元格-->
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <table border="1">
        <tr>
            <!--设置左右合并单元格,使单元格占左右两格-->
            <th colspan="2">标题一</th>

            <th>标题三</th>
        </tr>
        <tr>
            <!--设置左右合并单元格,使单元格占上下两格-->
            <td>内容一</td>
            <td rowspan="2">内容二</td>
            <td>内容三</td>
        </tr>
        <tr>
            <td>内容一</td>

            <td>内容三</td>
        </tr>
    </table>
</body>
</html>

CSS样式三种使用方式

# 第一种,标签直接使用style属性指定
# 多个样式使用‘;‘隔开
<div style="background-color: aqua;color: blue;">f</div>

# 第二种,在head中定义<script>标签
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style >
        .img2{
            background-image: url("http://misc.360buyimg.com/jdf/1.0.0/unit/globalImages/1.0.0/jd2015img.png");
            height: 18px;
            width: 18px;
            background-position: 0 -140px;
        }
    </style>
</head>
<body>
    <div class="img2"></div>
</body>
</html>

# 第三种,外部引用文件
commons.css
**************************************************
/*标签选择器*/
/*找到所有标签,应用*/
div{
    color: green;
}
/*id选择器(不常用)*/
/*找到id为i1的标签,应用*/
#i1{
    font-size: 56px;
}
/*class选择器(常用)*/
.c1{
    background-color: red;
}
/*层级选择器*/
/*一层层找到标签,应用*/
.c2 div p .c3{
    background-color: red;
}
/*组合选择器*/
/*应用到多个class*/
.c4,.c5,.c6{
    background-color: aqua;
}
========================================
test.html
**************************************************
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link >
    <link rel="stylesheet" href="common.css" />
</head>
<body>
    <div class="c1">redredred</div>
</body>
</html>

CSS标签选择器

/*标签选择器*/
/*找到所有div标签,应用*/
div{
    color: green;
}
/*id选择器(不常用)*/
/*找到id为i1的标签,应用*/
#i1{
    font-size: 56px;
}
/*class选择器(常用)*/
.c1{
    background-color: red;
}
/*层级选择器*/
/*一层层找到标签,应用*/
.c2 div p .c3{
    background-color: red;
}
/*组合选择器*/
/*应用到多个class*/
.c4,.c5,.c6{
    background-color: aqua;
}

CSS图片应用

现在有一张乘法口诀表

我要取出3X5=15的那一格:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .img {
            /*指定背景图片为view.jpg*/
            background-image: url(view.jpg);
            /*取图片的高和宽*/
            height: 86px;
            width: 132px;
            /*当高或宽超过图片时,不重复图片*/
            background-repeat: no-repeat;
            /*调整初始图片的坐标*/
            background-position: -263px -338px;
        }
    </style>
</head>
<body>
    <div class="img"></div>
</body>
</html>

CSS的display与vibility

vibility: hidden;  使应用到标签消失,但标签位置(高宽)存在

display: none;    使应用到标签消失,并且位置也消失

display: inline;   将块级标签变为内联标签(非严谨概念,例如div变为内联标签,则还可以调整高度和宽度,而纯内联标签不可以)

display: block;   将内联标签变为块级标签

display: inline-block;  使标签具有块级标签,和内联标签的共同的属性

CSS margin(外边距)与padding(内边距)

例如,我们有嵌套的两层div标签,A嵌套B(A是B的父标签),而

外边距: 自身大小不变,改变自身标签到父标签的距离

内边距: 自身内容不变,该变内容到标签边缘的距离

<!DOCTYPE html>
<!--浏览器打开,找到div div CSS,修改margin与padding-->
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .div1{
            width: 400px;
            height: 400px;
        }
        .div2{
            width: 200px;
            height: 200px;
        }
        div div{
            margin: 0 0 0 0;
            padding: 0 0 0 0;
        }
    </style>
</head>
<body>
    <div class="div1" style="border:5px solid red;height: 200px;background-color: blue">
        <div class="div2" style="border: 5px solid black;height: 50px; background-color: green"></div>
    </div>
</body>
</html>

demo

CSS 标签漂浮

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <div style="width: 500px;height:500px;border: 1px solid red;">
        <div style="width: 20%;background-color: aqua;float: left">f</div>
        <div style="width: 30%;background-color: rebeccapurple;float: right">e</div>
        <!--注意,当上两个子标签设置了float飘起来后,这时父标签定义的高度与宽度将会受影响-->
        <!--所以,需要加上以下标签,撑起父标签的高度-->
        <div style="clear: both;"></div>
    </div>
</body>
</html>

CSS 定位

position

fixed: 相对于浏览器窗口固定,配合top\buttom\left\right样式,将内容固定到窗口某一个位置

absolute: 绝对位置,在父标签找position: relative;,以配置relative的标签大小为绝对值,固定在某一个位置,如果找不到relative,则以全局为绝对值

relative: 配合absolute使用

CSS 透明属性

opacity: 0.6;    透明度0.6(同样可以使用background-color: rgba(0, 0,0 ,.6)   使用rgba的第四个参数定义透明度)

z-index: 10;     一般配合opacity使用,当我们做一个模态对话框时,弹出框不被遮罩层覆盖,使用z-index,是弹出框z-index大于遮罩层的z-index既弹出对话框顶层永远是对话框,然后是遮罩层,最后才是页面底层

CSS 补充

line-height: 44px;  定义行高有44px,使内容根据指定的行高居中

list-style-type: none;  去除表格的样式

时间: 2024-10-12 18:33:18

HTML与CSS基础学习的相关文章

HTML&CSS基础学习笔记8-预格式文本

<pre>标签的主要作用是预格式化文本.被包围在 pre 标签中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. <pre>标签的一个常见应用就是用来表示计算机的源代码.当然你也可以在你需要在网页中预显示格式时使用它. 会使你的文本换行的标签(例如<h>.<p>)绝不能包含在 <pre> 所定义的块里.尽管有些浏览器会把段落结束标签解释为简单地换行,但是这种行为在所有浏览器上并不都是一样的. 更多学习内容,就在码芽网http://www.

HTML&CSS基础学习笔记13—无序列表

无序列表 有时我们的工作繁忙,杂事很多,怕忘记,就会把事情一件件列出来,防止忘记. 它们的排列顺序对于我们来说并不重要,可以随意调换,我们将它称为无序列表,HTML里用<ul>标签来表示无序列表,列表里的项目则用<li>标签来表示: 1 2 3 4 5 <ul>     <li></li>     <li></li>     ... </ul> 看一段实例代码: 对于的浏览器显示结果是这样的: 更多内容学习,请

CSS基础学习十四:盒子模型补充之display属性设置

我在CSS基础学习十三:盒子模型的i博文只是阐释了CSS盒子模型,并没有过多的使用实例来演示.这篇博文 就来做一些盒子模型知识的补充.这一部分对于网页总体布局还是蛮重要的,过去大多数使用HTML中的table元素和 框架标签来进行网页的整体布局,现在我们使用最多的是DIV+CSS网页布局.所以一定要掌握好盒子模型,记住 content,border,padding和margin各自在盒子中的作用和使用方式. 先来看一个完整元素的盒子模型实例: <!DOCTYPE html PUBLIC "

CSS基础学习十五:盒子模型补充之外边距合并

今天继续接着CSS盒子模型补充,CSS基础学习十三:盒子模型和CSS基础学习十四:盒子模型补充之display属 性设置都是介绍了盒子模型中的内容概括.开始今天的主题:外边距合并. 外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合 并的外边距的高度中的较大者. (1)外边距合并 外边距合并叠加是一个相当简单的概念.但是,在实践中对网页进行布局时,它会造成许多混淆.简单地说,外 边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的

CSS基础学习十一:选择器的优先级

在CSS基础学习的篇章中,从第四篇博客开始说选择器,到昨天基本已经说完了.今天我们总结一下,选择器作 用:告知浏览器需要设置哪个dom元素的样式.最后来说说选择器一个重要的问题,选择器的优先级.判断优先级的 方法就是尝试!!! 一简单选择器的优先级 简单的选择器包括我们在第四篇,第五篇,第六篇博客的元素选择器(标签选择器),类选择器和id选择器. 我们来试验: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo

HTML&CSS基础学习笔记15-合并单元格

合并单元格 之前的文章中,我们已经能够创建一个简单地表格了,如果我们需要把横向的某两个相邻单元格<td>或者纵向的某两个相邻单元格<td>合并,我们该怎么做呢?我们要知道的知识点如下: 1.标签<td>的[colspan]属性规定单元格可横跨的列数,即横向合并的单元格数: 2.标签<td>的[rowspan] 属性规定单元格可横跨的行数,即纵向合并的单元格数: 3.这2个标签也可以同时使用. 样式示例: 现在就来试试合并单元格吧: <!DOCTYPE 

HTML&CSS基础学习笔记7-高亮文本及组合使用

HTML提供了<mark>标签可以让你的文本高亮,这样看起来更加醒目.<mark>标签内的文本会呈现特殊的样式,它和<em>,<strong>一样也是一个带有语义的标签. 代码如下: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>高亮文本</title><

HTML&CSS基础学习笔记4-定义文档类型

定义HTML的文档类型 Web 世界中存在许多不同的文档.只有了解文档的类型,浏览器才能正确地显示文档. HTML 也有多个不同的版本,只有完全明白页面中使用的确切 HTML 版本,浏览器才能完全正确地显示出 HTML 页面.这就是 <!DOCTYPE> 的用处. <!DOCTYPE> 声明不是 HTML 标签,它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令.是一种标准通用标记语言的文档类型声明,它的目的是要告诉标准通用置标语言解析器,它应该使用什么样的文档

HTML&CSS基础学习笔记14—有序列表及列表嵌套

我们上篇讲到了无序列表,那么今天就来看看有序列表和他们的组合嵌套使用吧. 有序列表 现在我们要做那堆杂事了,但是发现这么多杂事,先做哪个好呢?于是我们给这堆杂事弄个优先级排序,让我们能够按照顺序做下去.HTML里用<ol>标签来表示有序列表,<ol>标签的列表项依然是用<li>标签表示. 它的代码模板是这样的: <span style="font-family:Microsoft YaHei;"><ol>       <

HTML&CSS基础学习笔记3-HTML的标签语法

HTML标签语法 1. 标签由英文尖括号<和>括起来,如<html>就是一个标签. 2. HTML中的标签一般都是成对出现的,分开始标签和结束标签.结束标签比开始标签多了一个/.如: <p></p> 3.标签的内容是开始标签与结束标签之间的内容,如:<h1>这是标题</h1>. 4. 标签与标签之间是可以嵌套的,但先后顺序必须保持一致,如:<div>里嵌套<p>,那么</p>必须放在</div