HTML+CSS基础

HTML

  • 学习web前端开发基础技术需要掌握:HTML、CSS、JavaScript语言。

HTML是网页内容的载体。内容就是网页制作者放在页面上想让用户浏览的信息,可以包含文字、图片、视频等。

CSS样式是表现。比如,标题字体、颜色变化、或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。

JavaScript是用来实现网页上的特效效果。如:鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有焦点新闻(新闻图片)的轮换。可以这么理解,有动画的,有交互的一般都是有JavaScript来实现的。

  • 网页中每一个内容在浏览器中的显示,都是要存放到各种标签中。
    标签的语法:
    (1)标签由英文尖括号<和>括起来,如就是一个标签。
    (2)html中的标签一般都是成对出现的,分开始标签和结束标签。结束标签比开始标签多了一个/。
    如:

(3)标签与标签之间是可以嵌套的,但先后顺序必须保持一致,如:

3.html文件基本结构:

  
     ...
     ... /* 在和标签之间的内容是网页的主要内容,如

等网页内容标签,在这里的标签中的内容会在浏览器中显示出来。*/ /* 称为跟标签,所有的网页标签都在中*/

  /*标签用于定义文档的头部,它是所有头部元素的容器。头部标签有、<script>、<style>、<link>、<meta>等标签。*/
  <head>
     <title>...
     
     
     
     
  
  • html的代码注释:
  /*快捷键:Ctrl+/*/
  • 语义化
    即要明白每个标签的用途(在什么情况下使用此标签合理),比如:网页上的文章的标题可以用标题标签,网页上的各个栏目的栏目名称也可以使用标题标签。文章中内容的段落就得放在段落标签中,在文章中有强调的文本,就可以使用em标签强调等等。
    优点:
    (1)更容易被搜索引擎收录。
    (2)更容易让屏幕阅读器读出网页内容。

  • 标签
    (1)标题标签(6个,h1、h2、h3、h4、h5、h6)。

    (2)加入强调语气,使用标签:标签是为了强调一段话中的关键字时使用,它们的语义是强调。

    (3)使用span标签为文字设置单独样式:标签是没有语义的,它的作用就是为了设置单独的样式用的。

    (4)标签,短文本引用。

    (5)

    标签,长文本引用:浏览器对
    标签的解析是缩进样式。

    (6)使用标签分行显示文本:

  xhtml1.0写法:
html4.01写法:
/*现在一般使用 xhtml1.0 的版本的写法(其它标签也是),这种版本比较规范。*/

(7)在网页中添加一些空格:在html代码中输入空格、回车都是死没有作用的,要想输入空格,必须加入 。

(8)

标签,为网页加入地址信息:

联系地址信息

(9)使用标签加入一行代码:

var i=i+300;

(10)使用

标签为你的网页加入大段代码:

语言代码段
/*
 标签的主要作用:预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。
  
 标签不只是为显示计算机的源代码时用的,在需要在网页中预显示格式时都可以使用它,只是
标签的一个常见应用就是用来展示计算机的源代码。*/

(11)使用ul-li标签,添加新闻信息列表:ul-li是没有前后顺序的信息列表,每项

  • 前面是一个黑色的圆点。

     
    • 信息
    • 信息 ......

    (12)使用ol-li标签,添加图书销售排行榜:ol-li标签可用于制作有序列表。

      在网页中显示的默认样式一般为:每项
    1. 前都自带一个序号,序号默认从1开始。

       
      1. 信息
      2. 信息
      3. ......

      (13)div标签:

       
      /*引入id属性,给div提供唯一的名称*/ /*div在排版中的作用:在网页制作过程过中,可以把一些独立的逻辑部分划分出来,放在一个
      标签中,这个
      标签的作用就相当于一个容器。*/

      (14)table标签,认识网页上的表格:

        创建表格的四个元素:tabel、tbody、tr、th、td
        …
      :整个表格以标记开始、
      标记结束。 …:如果不加 , table表格加载完后才显示。加上这些表格结构, tbody包含行的内容下载完优先显示,不必等待表格结束后在显示,同时如果表格很长,用tbody分段,可以一部分一部分地显示。(通俗理解table 可以按结构一块块的显示,不在等整个表格加载完后显示。) …:表格的一行,所以有几对tr 表格就有几行。 …:表格的一个单元格,一行中包含几对...,说明一行中就有几列。 …:表格的头部的一个单元格,表格表头。 table表格在没有添加css样式之前,在浏览器中显示是没有表格线的表头,也就是th标签中的文本默认为粗体并且居中显示 用css样式,给表格加边框:

      (15)caption标签,为表格添加标题和摘要:

      /*摘要的内容是不会在浏览器中显示出来的。它的作用是增加表格的可读性(语义化),使搜索引擎更好的读懂表格内容,还可以使屏幕阅读器更好的帮助特殊用户读取表格内容。*/
         /*摘要*/
      
      /*标题*/
        
      ... ...
      标题文本
      ... ...

      (16)使用标签,连接到另一个页面:

      /*title属性的作用,鼠标滑过链接文字时会显示这个属性的文本内容。这个属性在实际网页开发中作用很大,主要方便搜索引擎了解链接地址的内容(语义化更友好)。*/
      链接显示的文本
      
      /* 标签在默认情况下,链接的网页是在当前浏览器窗口中打开,有时我们需要在新的浏览器窗口中打开。*/
      click here!
      

      (17)使用mailto在网页中链接email地址:

        对此影评有何感想,发送邮件给我
      

      (18)img标签,为网页插入图片:

      下载失败时的替换文本
      
      My Image
       /*src:标识图像的位置;
      alt:指定图像的描述性文本,当图像不可见时(下载不成功时),可看到该属性指定的文本;
      title:提供在图像可见时对图像的描述(鼠标滑过图片时显示的文本);
      图像可以是GIF,PNG,JPEG格式的图像文件。*/
      

      (19)使用表单标签,与用户交互:

      /*action :浏览者输入的数据被传送到的地方,比如一个PHP页面(save.php); method : 数据传送的方式(get/post); 所有表单控件(文本框、文本域、按钮、单选框、复选框等)都必须放在
      标签之间,否则用户输入的信息可提交不到服务器上; method : post/get 的区别这一部分内容属于后端程序员考虑的问题。*/
      • 表单控件,设置不同type

      (1)文本输入框、密码输入框:

        
      /* type:当type="text"时,输入框为文本输入框; 当type="password"时, 输入框为密码输入框。
      name:为文本框命名,以备后台程序ASP 、PHP使用。
      value:为文本输入框设置默认值。(一般起到提示作用)。*/
      

      (2)文本域,支持多行文本输入:

        
      /*cols:多行输入域的列数;
      rows:多行输入域的行数;
      这两个属性可用css样式的width和height来代替:col用width,row用height。*/
      

      (3)单选框、复选框:

      
      /*type:当 type="radio" 时,控件为单选框;当 type="checkbox" 时,控件为复选框。
      value:提交数据到服务器的值(后台程序PHP使用)。
      name:为控件命名,以备后台程序 ASP、PHP 使用。
      checked:当设置 checked="checked" 时,该选项被默认选中。
      同一组的单选按钮,name 取值一定要一致,这样同一组的单选按钮才可以起到单选的作用。*/
      

      (4)下拉列表框:

        
      ...
      /*value的值是表示向服务器提交的值,设置select="selected"属性表示该项被默认选中。*/

      (5)下拉列表框进行多选:

        
      /*下拉列表也可以进行多选操作,设置multiple="multiple"属性,就可以实现多选功能,在 windows 操作系统下,进行多选时按下Ctrl键同时进行单击(在 Mac下使用 Command +单击),可以选择多个选项。*/
      

      (6)按钮:

      /* 提交按钮*/
      
      
      /*提交按钮*/
      
      

      (7)form表单中的label标签:

      /*label标签的作用是为鼠标用户改进了可用性,当用户单击选中该label标签时,浏览器就会自动将焦点转到和标签相关的表单控件上(就自动选中和该label标签相关连的表单控件上)*/
        

      CSS

      • 认识css样式:CSS全称为“层叠样式表 (Cascading Style Sheets)”,它主要是用于定义HTML内容在浏览器内的显示样式,如文字大小、颜色、字体加粗等。

      • css 样式由选择符和声明组成,而声明又由属性和值组成:
        选择符:又称选择器,指明网页中要应用样式规则的元素。
        声明:在英文大括号“{}”中的的就是声明,属性和值之间用英文冒号“:”分隔。当有多条声明时,中间可以英文分号“;”分隔。

      • 内联式css样式,直接写在现有的HTML标签中,如:

        

      这里文字是红色。

      • 嵌入式css样式,写在当前的文件中:
      
         
      
      
      • 外部式css样式,写在单独的一个文件中
       
      
      • 三种方法的优先级
        内联式 > 嵌入式 > 外部式,但是嵌入式>外部式有一个前提:嵌入式css样式的位置一定在外部式的后面。

      • 选择器:每一条css样式声明(定义)由两部分组成:

      (1)标签选择器:

      /*标签选择器其实就是html代码中的标签。如、、

      */ 标签 { css样式代码; }

      (2)类选择器

        .类选择器名称 {
           css样式代码;
        }
        /*英文圆点开头、其中类选器名称可以任意起名(但不能起中文)。
        使用方法:
        第一步:使用合适的标签把要修饰的内容标记起来,如下:
        胆小如鼠
        第二步:使用class="类选择器名称"为标签设置一个类,如下:
        胆小如鼠
        第三步:设置类选器css样式,如下:
        .stress{color:red;}*/
      

      (3)ID选择器

        #Id名称 {
          css样式代码;
        }
      /* 为标签设置id="ID名称",而不是class="类名称"。
        ID选择符的前面是井号(#)号,而不是英文圆点(.)*/
      

      (4)子代选择器,即大于符号(>),用于选择指定标签元素的第一代子元素。

        .first>span {
          border: 1px solid red;
        }
      

      (5)后代选择器,即加入空格,用于选择指定标签元素下的后辈元素。

        .first span {
          color: red;
        }
      

      (6)通用选择器,使用一个(*)号指定,它的作用是匹配html中所有标签元素。

      * {
        css样式代码;
      }
      

      (8)伪类选择器,允许给html不存在的标签(标签的某种状态)设置样式。

      (9)分组选择器,当你想为html中多个标签元素设置同一个样式时,可以使用分组选择符(,)。

        h1,span {
         color: red;
        }
      
      • 子代选择器和后代选择器的区别:
        后代选择器与子代选择器的区别,子代选择器仅是指它的直接后代,作用于子元素的第一代后代。而后代选择器是作用于所有子后代元素。后代选择器通过空格来进行选择,而子代选择器是通过“>”进行选择。

      • CSS的特点性

      (1)继承性
      css的某些样式是具有继承性的,继承是一种规则,它允许样式不仅用于某个特定html标签元素,而且应用于其后代。
      有一些css样式是不具有继承性的。如border:1px solid red。

      (2)特殊性

        p {
          color:red;
        }
        .first {
          color:green;
        }
       

      三年级时,我还是一个胆小如鼠的小女孩。

      /*p和.first都匹配到了p标签上,但green是正确的颜色,因为浏览器是根据权值来判断使用哪种css样式的,权值高的就使用哪种css样式。*/ /* 权值的规则:标签的权值为1,类选择器的权值为10,ID选择器的权值最高为100。*/ p{color:red;} /*权值为1*/ p span{color:green;} /*权值为1+1=2*/ .warning{color:white;} /*权值为10*/ p span.warning{color:purple;} /*权值为1+1+10=12*/ #footer .note p{color:yellow;} /*权值为100+10+1=111*/

      (3)层叠性

       /*层叠就是在html文件中对于同一个元素可以有多个css样式存在,当有相同权重的样式存在时,会根据这些css样式的前后顺序来决定,处于最后面的css样式会被应用。*/
       p {
          color:red;
        }
        .first {
          color:green;
        }
       

      三年级时,我还是一个胆小如鼠的小女孩。

      /* 最后 p 中的文本会设置为green,这个层叠很好理解,理解为后面的样式会覆盖前面的样式。*/

      (4)重要性

        /*使用!important为某些样式设置具有最高权值。*/
        p {
          color:red!important;
        }
        .first {
          color:green;
        }
       

      三年级时,我还是一个胆小如鼠的小女孩。

      /*这时 p 段落中的文本会显示的red红色。*/
      • 文字排版--字体、字号、颜色、粗体、斜体、下划线、删除线:
        /*文字:*/
        body {
         font-family:"字体";
        }
      
      /* 字号:*/
        body {
          font-size: 12px;
        }
      
       /* 颜色:*/
        body {
          color: #666;
        }
        
      /*粗体:*/
        body {
          font-weight: bold;
        }
      
        /*斜体:*/
        body {
          font-style: italic;
        }
      
        /*下划线:*/
        body {
          text-decoration: underline;
        }
        
      /*删除线:*/
        body {
          text-decoration: line-through;
        }
      
      • 段落排版--缩进、行间距(行高)、中文字间距和字母间距、对齐:
        /*缩进:*/
        body {
          text-indent: 2em;
        }
        
      /*行间距(行高):*/
        body {
          line-height: 1.5em;
        }
      
      /*  文字间隔(字母间隔):*/
        h1 {
          letter-spacing: 50px;
        }
        
      /*单词间距:*/
        h1 {
          word-spacing: 50px;
        }
        
      /*居中对齐(块级元素):*/
        h1 {
          text-align: center;
        }
        
      /*居左:*/
        h1 {
          text-align: left;
        }
        
      /*居又:*/
        h1 {
          text-align: right;
        }
      
      • 元素分类
        在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素、内联元素(又叫行内元素)和内联块状元素。
        常用的块级元素:

      ...