码迷,mamicode.com
首页 > Web开发 > 详细

第一章、html

时间:2018-07-14 11:47:26      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:inpu   鼠标   相对   位置   c盘   数字   www   tle   ati   

1、html(结构标准)的概念

   html全称HyperText Mackeup Language,翻译为超文本标记语言,它不是一种编程语言,是一种描述性的标记语言,用于描述超文本内容的显示方式。比如字体、颜色、大小等。

  • 超文本:音频,视频,图片称为超文本。
  • 标记 :<英文单词或者字母>称为标记,一个HTML页面都是由各种标记组成。

  作用:HTML是负责描述文档语义的语言。

  html中,除了语义,其他什么都没有。

2、html网络术语

  • 网页 :由各种标记组成的一个页面就叫网页。
  • 主页(首页) : 一个网站的起始页面或者导航页面。
  • 标记: <p>称为开始标记 ,</p>称为结束标记,也叫标签。每个标签都规定好了特殊的含义。
  • 元素:<p>内容</p>称为元素.
  • 属性:给每一个标签所做的辅助信息

3、html的规范

  • HTML是一个弱势语言
  • HTML不区分大小写
  • HTML页面的后缀名是html或者htm(有一些系统不支持后缀名长度超过3个字符,比如dos系统)
  • HTML的结构:
    • 声明部分:主要作用是用来告诉浏览器这个页面使用的是哪个标准。是HTML5标准。
    • head部分:将页面的一些额外信息告诉服务器。不会显示在页面上。
    • body部分:我们所写的代码必须放在此标签內。

  3.1编写规范:

    1)所有标记元素都要正确的嵌套,不能交叉嵌套。正确写法举例:<h1><font></font></h1>

   (2)所有的标记都必须小写。

   (3)所有的标记都必须关闭。

    •  双边标记:<span></span>
    •  单边标记:<br> 转成 <br /> <hr> 转成 <hr />,还有<img src=“URL” />

   (4)所有的属性值必须加引号。<h1 id="head"></h1>

   (5)所有的属性必须有值。<input type="radio" checked="checked" />

  3.2 HTML的基本语法特征

    (1)HTML对换行不敏感,对tab不敏感

      HTML只在乎标签的嵌套结构,嵌套的关系。谁嵌套了谁,谁被谁嵌套了,和换行、tab无关。换不换行、tab不tab,都不影响页面的结构。

      也就是说,HTML不是依靠缩进来表示嵌套的,就是看标签的包裹关系。但是,我们发现有良好的缩进,代码更易读。要求大家都正确缩进标签。

    (2) 空白折叠现象

      HTML中所有的文字之间,如果有空格、换行、tab都将被折叠为一个空格显示。

    (3)标签要严格封闭

4、html文件结构说明

  1、文档声明头

  任何一个标准的HTML页面,第一行一定是一个以

<!DOCTYPE...

  开头的这一行,就是文档声明头,DocType Declaration,简称DTD。此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。

  

  2、头标签(head)

  head标签都放在头部分之间。这里面包含了:<title>、<meta><link>,<style>

  • <title>:指定整个网页的标题,在浏览器最上方显示。
  • <meta>:提供有关页面的基本信息
    • 有两个属性:
      • http-equiv :它用来向浏览器传达一些有用的信息,帮助浏览器正确地显示网页内容,与之对应的属性值为content
        • <!--重定向 2秒后跳转到对应的网址,注意分号-->
          <meta http-equiv="refresh" content="2;URL=http://www.luffycity.com">
          <!--指定文档的内容类型和编码类型 -->
          <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
          <!--告诉IE浏览器以最高级模式渲染当前网页-->
          <meta http-equiv="x-ua-compatible" content="IE=edge">
      • name :主要用于页面的关键字和描述,是写给搜索引擎看的,关键字可以有多个用 ‘,’号隔开,与之对应的属性值为content
        • <meta name="Keywords" content="网易,邮箱,游戏,新闻,体育,娱乐,女性,亚运,论坛,短信" />
        • 这些关键词,就是告诉搜索引擎,这个网页是干嘛的,能够提高搜索命中率。让别人能够找到你,搜索到。
        • <meta name="Description" content="网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。" />
        •  只要设置Description页面描述,那么百度搜索结果,就能够显示这些语句,这个技术叫做SEO(search engine optimization,搜索引擎优化)。
        • <meta name=viewport content="width=device-width, initial-scale=1">
        • 上面这个标签,是让我们网页支持移动端,移动设备优先(了解即可)
  • <link>:定义文档与外部资源的关系。
  • <style>:定义内部样式表与网页的关系

  3、body标签

    HTML标签中有两类标签:字体标签、排序标签

    一、字体标签:

      字体标签包含:h1~h6、<font>、<u>、<b>、<strong><em>、<sup>、<sub> 

      标题:大到小,加粗 :h1~h6  :标题使用<h1><h6>标签进行定义。<h1>定义最大的标题,<h6>定义最小的标题。具有align属性,属性值可以是:left、center、right。

    特殊字符:

  • &nbsp;:空格 (non-breaking spacing,不断打空格)
  • &lt;:小于号(less than)
  • &gt;:大于号(greater than)
  • &amp;:符号&
  • &quot;:双引号
  • &apos;:单引号
  • &copy;:版权?
  • &trade;:商标?

 要求大家背过的特殊字符:&nbsp;、&lt;、&gt;、&copy

比如说,你想把<p>作为一个文本在页面上显示,直接写<p>是肯定不行的,因为这代表的是一个段落标签,所以这里需要用到转义字符。应该这么写:

 

这是一个HTML语言的&lt;p&gt;标签

效果显示:

技术分享图片

  二、排版标签

   HTML标签是分等级的。HTML将所有的标签分为两种:

  • 文本级标签:p、span、a、b、i、u、em。文本标签里只能放文字、图片、表单元素。
  • 容器级标签:div、h系列、li、dt、dd。容器级标签里可以放任何东西。

     1、段落标签<p>:p标签是一个文本级标签,p里面只能放文字、图片、表单元素

       属性:align=‘属性值‘:对齐方式。属性值包括:left、center、right

     2、块级标签:div:把标签中的内容作为一个块儿来对待(division)。必须单独占据一行。

      div标签的属性:align="属性值":设置块儿的位置。属性值可选择:left、right、 center

     <span><div>唯一的区别在于<span>是不换行的,而<div>是换行的。

     如果单独在网页中插入这两个元素,不会对页面产生任何的影响。这两个元素是专门为定义CSS样式而生的。或者说,DIV+CSS来实现各种样式。

     div和span是非常重要的标签,div的语义是division“分割”; span的语义就是span“范围、跨度”。CSS课程中你将知道,这两个东西,都是最最重要的“盒子”。

      div标签是一个容器级标签,里面什么都能放,甚至可以放div自己。

     span也是表达“小区域、小跨度”的标签,但是是一个文本级的标签。

       “div+css”。div标签负责布局,负责结构,负责分块。css负责样式

     3、废弃标签:br换行  hr加水平分隔线 

   三、超链接(有三种形式)

    1、外部链接:链接到外部文件。举例:

      <a href="./new.html">点击进入到新网页</a>   ./表示绝对路径

        <a href="http://www.baidu.com" target="_blank">进入百度</a>
        <!-- 阻止a标签的默认事件--> 只显示手型图标,没有超链接
          <a href="javascript:;" title=""></a>
          <a href="javascript:viod(0);" title="">
        <img src="./time1.jpg" >
          </a>
     2、瞄
         ......
  
        <a href=‘#top‘>回到顶部 <a>
        
        <a href="new.hhml#top">回到顶部</a>如果写成这样,就会跳到new的顶部

     3、邮件链接
      <a href="mailto:zhaoxu@tedu.cn">联系我们</a>

      特殊几个链接:

        返回页面顶部的位置 : <a href="#">跳转到顶部</a>

与js有关:

 <a href="javascript:alert(1)">内容</a>
  <a href="javascript:;">内容</a>
javascript:;表示什么都不执行,这样点击<a>时就没有任何反应 例如:<a href="javascrip:;">内容</2
javascript:是表示在触发<a>默认动作时,执行一段JavaScript代码。 例如:<ahref="javascript:alert()">内容</a>   

    超链接的属性: 

  • href:目标URL
  • title:悬停文本。公共的,所有标签都有这个属性
  • name:主要用于设置一个锚点的名称。
  • target:告诉浏览器用什么方式来打开目标页面。target属性有以下几个值:
    • _self:在同一个网页中显示(默认值)
    • _blank在新的窗口中打开
    • _parent:在父窗口中显示
    • _top:在顶级窗口中显示

    

      4、图片

        img: 代表的就是一张图片。是单边标记。

 

         img是自封闭标签,也称为单标签。

        HTML页面不是直接插入图片,而是插入图片的引用地址,所以也要把图片上传到服务器上。

 

        在写图片的路径时,有两种写法:相对路径、绝对路径

        

1、写法一:相对路径

相对当前页面所在的路径。两个标记 . 和 .. 分表代表当前目录和父路径。

举例1:

<!-- 当前目录中的图片 -->
<img src="2.jpg">
<img src=".\2.jpg"> 
<!-- 上一级目录中的图片 -->
<img src="..\2.jpg">
img 是image“图片”的简写,src 是英语source“资源”的缩写。

举例2:

<img src="images/1.jpg">
上方代码的意思是说,当前页面有一个并列的文件夹images,在文件夹images中存放了一张图片1.jpg

 2、写法二:绝对路径

(1)以盘符开始的绝对路径。举例:

<img src="C:\Users\aaa\Desktop\html-01\images\1.jpg">2)网络路径。举例:

<img src="http://www.baidu.com/2016040102.jpg">
相对路径和绝对路径的总结

相对路径的好处:站点不管拷贝到哪里,文件和图片的相对路径关系都是不变的。
相对路径使用有一个前提,就是网页文件和你的图片,必须在一个服务器上。

问题:我的网页在C盘,图片却在D盘,能不能插入呢?

答案: 用相对路径不能,用绝对路径也不能。

注意:可以使用file://来插入,但是这种方法,没有任何意义!因为服务器上没有所谓c盘、d盘。

下面的方法是行的,但是没有任何工程上的意义,这是因为服务器没有盘符,linux系统没有盘符:

<img src="file://C:\Users\Danny\Pictures\明星\1.jpg" alt="" />

总结一下:

  • 我们现在无论是在a标签、img标签,如果要用路径。只有两种路径能用,就是相对路径和绝对路径。

  • 相对路径,就是../ image/ 这种路径。从自己出发,找到别人;

  • 绝对路径,就是http://开头的路径。

  • 绝对不允许使用file://开头的东西,这个是完全错误的!

    img标签的常用其它属性:

    •   width:宽度
    •   height:高度
    •   title提示性文本。公有属性。也就是鼠标悬停时出现的文本。
    •   align:指图片的水平对齐方式,属性值可以是:left、center、right
    •   alt:当图片显示不出来的时候,代替图片显示的内容。alt是英语 alternate “替代”的意思。(有的浏览器不支持)

  5、表的标签

   一、列表标签

    列表标签分为三种。

 

    1、无序列表<ul>,无序列表中的每一项是<li>

英文单词解释如下:

ul:unordered list,“无序列表”的意思。
li:list item,“列表项”的意思。
示例:

复制代码
<ul>
         <li>张三</li>    
         <li>李四</li>    
         <li>王五</li>    
</ul>
  • type="属性值"。属性值可以选: disc(实心原点,默认),square(实心方点),circle(空心圆)。

  

列表之间是可以嵌套的:
 <ul>
    <li><b>北京市</b>
        <ul>
            <li>海淀区</li>
            <li>朝阳区</li>
            <li>东城区</li>

        </ul>
    </li>

    <li><b>广州市</b>
        <ul>
            <li>天河区</li>
            <li>越秀区</li>
        </ul>
    </li>
  </ul>

      2、有序列表<OL>,里面的每一项是<li>

 

    

<ol>   
        <li>嘿哈</li>
       <li>哼哈</li>
        <li>呵呵</li>
</ol>

type="属性值"。属性值可以是:1(阿拉伯数字,默认)、a、A、i、I。结合start属性表示从几开始。

    3、定义列表<dl>   

  • <dt>:definition title 列表的标题,这个标签是必须的
  • <dd>:definition description 列表的列表项,如果不需要它,可以不加

  备注:dt、dd只能在dl里面;dl里面只能有dt、dd。

<dl>
        <dt>第一条规则</dt>
        <dd>不准睡觉</dd>
        <dd>不准交头接耳</dd>
        <dd>不准下神</dd>

        <dt>第二条规则</dt>
        <dd>可以泡妞</dd>
        <dd>可以找妹子</dd>
        <dd>可以看mv</dd>
</dl>
 <dl>
        <dt>北京</dt>
        <dd>国家首都,政治文化中心</dd>
        <dd>污染很严重,PM2.0天天报表</dd>
        <dt>上海</dt>
        <dd>魔都,有外滩、东方明珠塔、黄浦江</dd>
        <dt>广州</dt>
        <dd>中国南大门,有珠江、小蛮腰</dd>
    </dl>
<dl>
        <dt>北京</dt>
        <dd>国家首都,政治文化中心</dd>
        <dd>污染很严重,PM2.0天天报表</dd>
    </dl>

    <dl>
        <dt>上海</dt>
        <dd>魔都,有外滩、东方明珠塔、黄浦江</dd>
    </dl>

    <dl>
        <dt>广州</dt>
        <dd>中国南大门,有珠江、小蛮腰</dd>
    </dl>

  二、表格标签

      表格标签用<table>表示。

<table>
        <tr>
            <td>小马哥</td>
            <td>18</td>
            <td>男</td>
            <td>山东</td>
        </tr>

        <tr>
            <td>小岳岳</td>
            <td>45</td>
            <td>男</td>
            <td>河南</td>
        </tr>

        <tr>
            <td>邓紫棋</td>
            <td>23</td>
            <td>女</td>
            <td>香港</td>
        </tr>

    </table>

    <table>的属性:

      • border:边框。像素为单位。
      • style="border-collapse:collapse;":单元格的线和表格的边框线合并
      • width:宽度。像素为单位。
      • height:高度。像素为单位。
      • bordercolor:表格的边框颜色。
      • align表格的水平对齐方式。属性值可以填:left right center。
        注意:这里不是设置表格里内容的对齐方式,如果想设置内容的对齐方式,要对单元格标签<td>进行设置)
      • cellpadding:单元格内容到边的距离,像素为单位。默认情况下,文字是紧挨着左边那条线的,即默认情况下的值为0。
        注意不是单元格内容到四条边的距离哈,而是到一条边的距离,默认是与左边那条线的距离。如果设置属性dir="rtl",那就指的是内容到右边那条线的距离。
      • cellspacing:单元格和单元格之间的距离(外边距),像素为单位。默认情况下的值为0
      • bgcolor="#99cc66":表格的背景颜色。
      • background="路径src/...":背景图片。
        背景图片的优先级大于背景颜色

     

    <tr>:行

      一个表格就是一行一行组成的嘛。
      属性:

    • dir:公有属性,设置这一行单元格内容的排列方式。可以取值:ltr:从左到右(left to right,默认),rtl:从右到左(right to left)
    • bgcolor:设置这一行的单元格的背景色。
      注:没有background属性,即:无法设置这一行的背景图片,如果非要设置,可以用css实现。
    • height:一行的高度
    • align="center":一行的内容水平居中显示,取值:left、center、right
    • valign="center":一行的内容垂直居中,取值:top、middle、bottom

    <td>:单元格

    属性:

    • align:内容的横向对齐方式。属性值可以填:left right center。
      如果想让每个单元格的内容都居中,这个属性太麻烦了,以后用css来解决。
    • valign:内容的纵向对齐方式。属性值可以填:top middle bottom
    • width:绝对值或者相对值(%)
    • height:单元格的高度
    • bgcolor:设置这个单元格的背景色。
    • background:设置这个单元格的背景图片。

    单元格的合并

      如果要将两个单元格合并,那肯定就要删掉一个单元格。
      单元格的属性:

      • colspan:横向合并。例如colspan="2"表示当前单元格在水平方向上要占据两个单元格的位置。
      • rowspan:纵向合并。例如rowspan="2"表示当前单元格在垂直方向上

    

<table border="1px" style="border-collapse:collapse" bordercolor="red">
        <tr>
            <td>小马哥</td>
            <td>18</td>
            <td>男</td>
            <td rowspan="3">中国</td>
        </tr>

        <tr>
            <td>小岳岳</td>
            <td>45</td>
            <td>男</td>

        </tr>

        <tr>
            <td>邓紫棋</td>
            <td>23</td>
            <td >女</td>
        </tr>

    </table>

    <th>:加粗的单元格。相当于<td> + <b>

      • 属性同<td>标签

    <caption>:表格的标题。使用时和tr标签并列

   三、表单标签:

     表单标签用<form>表示,用于与服务器的交互。表单就是收集用户信息的,就是让用户填写的、选择的。    

    属性:

    •   name:表单的名称,用于JS来操作或控制表单时使用;
    •   id:表单的名称,用于JS来操作或控制表单时使用;
    •   action:指定表单数据的处理程序,一般是PHP,如:action=“login.php”
    •   method:表单数据的提交方式,一般取值:get(默认)和post

  

form标签里面的action属性和method属性,在后面课程给大家讲解。稍微说一下:action属性就是表示,表单将提交到哪里。 method属性表示用什么HTTP方法提交,有get、post两种。 

get提交和post提交的区别:
GET方式:
将表单数据,以"name=value"形式追加到action指定的处理程序的后面,两者间用"?"隔开,每一个表单的"name=value"间用"&"号隔开。
特点:只适合提交少量信息,并且不太安全(不要提交敏感数据)、提交的数据类型只限于ASCII字符。

POST方式:
将表单数据直接发送(隐藏)到action指定的处理程序。POST发送的数据不可见。Action指定的处理程序可以获取到表单数据。
特点:可以提交海量信息,相对来说安全一些,提交的数据格式是多样的(Word、Excel、rar、img)。

Enctype:
表单数据的编码方式(加密方式),取值可以是:application/x-www-form-urlencoded、multipart/form-data。Enctype只能在POST方式下使用。

    • Application/x-www-form-urlencoded:默认加密方式,除了上传文件之外的数据都可以
    • Multipart/form-data:上传附件时,必须使用这种编码方式

<input>:输入标签(文本框)

用于接收用户输入。

<input type="text" />

属性:

      • type="属性值":文本类型。属性值可以是:
        • text(默认)
        • password:密码类型
        • radio:单选按钮,名字相同的按钮作为一组进行单选(单选按钮,天生是不能互斥的,如果想互斥,必须要有相同的name属性。name就是“名字”。
          )。非常像以前的收音机,按下去一个按钮,其他的就抬起来了。所以叫做radio。
        • checkbox:多选按钮,名字相同的按钮作为一组进行选择。
        • checked:将单选按钮或多选按钮默认处于选中状态。当<input>标签的type="radio"时,可以用这个属性。属性值也是checked,可以省略。
        • hidden:隐藏框,在表单中包含不希望用户看见的信息
        • button:普通按钮,结合js代码进行使用。
        • submit:提交按钮,传送当前表单的数据给服务器或其他程序处理。这个按钮不需要写value自动就会有“提交”文字。这个按钮真的有提交功能。点击按钮后,这个表单就会被提交到form标签的action属性中指定的那个页面中去。
        • reset:重置按钮,清空当前表单的内容,并设置为最初的默认值
        • image:图片按钮,和提交按钮的功能完全一致,只不过图片按钮可以显示图片。
        • file:文件选择框。
          提示:如果要限制上传文件的类型,需要配合JS来实现验证。对上传文件的安全检查:一是扩展名的检查,二是文件数据内容的检查。
      • value="内容":文本框里的默认内容(已经被填好了的)
      • size="50":表示文本框内可以显示五十个字符。一个英文或一个中文都算一个字符。
        注意size属性值的单位不是像素哦
      • readonly:文本框只读,不能编辑。因为它的属性值也是readonly,所以属性值可以不写。
        用了这个属性之后,在google浏览器中,光标点不进去;在IE浏览器中,光标可以点进去,但是文字不能编辑。
      • disabled:文本框只读,不能编辑,光标点不进去。属性值可以不写。
 <form>
        姓名:<input value="呵呵" >逗比<br>
        昵称:<input value="哈哈" readonly=""><br>
        名字:<input type="text" value="name" disabled=""><br>
        密码:<input type="password" value="pwd" size="50"><br>
        性别:<input type="radio" name="gender" value="male" checked=""><input type="radio" name="gender" value="female" >女<br>
        爱好:<input type="checkbox" name="love" value="eat">吃饭
              <input type="checkbox" name="love" value="sleep">睡觉
              <input type="checkbox" name="love" value="bat">打豆豆
    </form>
四种按钮的举例:
<form>
        <input type="button" value="普通按钮"><br>
        <input type="submit"  value="提交按钮"><br>
        <input type="reset" value="重置按钮"><br>
        <input type="image" src="images/bojie.jpeg" width="400" value="图片按钮2"><br>
        <input type="file" value="文件选择框">
</form>

<select>:下拉列表标签

<select>标签里面的每一项用<option>表示。select就是“选择”,option“选项”。

select标签和ul、ol、dl一样,都是组标签。

<select>标签的属性:

  • multiple:可以对下拉列表中的选项进行多选。没有属性值。
  • size="3":如果属性值大于1,则列表为滚动视图。默认属性值为1,即下拉视图。

<option>标签的属性:

  • selected:预选中。没有属性值。
  <form>
        <select>
            <option>小学</option>
            <option>初中</option>
            <option>高中</option>
            <option>大学</option>
            <option selected="">研究生</option>
        </select>
        <br><br><br>

        <select size="3">
            <option>小学</option>
            <option>初中</option>
            <option>高中</option>
            <option>大学</option>
            <option>研究生</option>
        </select>
        <br><br><br>

        <select multiple="">
            <option>小学</option>
            <option>初中</option>
            <option selected="">高中</option>
            <option selected="">大学</option>
            <option>研究生</option>
        </select>
        <br><br><br>

    </form>

<textare>标签:多行文本输入框

text就是“文本”,area就是“区域”。

属性:

  • value:提交给服务器的值。
  • rows="4":指定文本区域的行数。
  • cols="20":指定文本区域的列数。
  • readonly:只读。
<form>
        <textarea name="txtInfo" rows="4" cols="20">路飞学城</textarea>
</form>

表单的语义化

比如,我们在注册一个网站的信息的时候,有一部分是必填信息,有一部分是选填信息,这个时候可以利用表单的语义化。

  <form>

        <fieldset>
        <legend>账号信息</legend>
        姓名:<input value="呵呵" >逗比<br>
        密码:<input type="password" value="pwd" size="50"><br>
        </fieldset>

        <fieldset>
        <legend>其他信息</legend>
        性别:<input type="radio" name="gender" value="male" checked=""><input type="radio" name="gender" value="female" >女<br>
        爱好:<input type="checkbox" name="love" value="eat">吃饭
              <input type="checkbox" name="love" value="sleep">睡觉
              <input type="checkbox" name="love" value="bat">打豆豆
        </fieldset>

    </form>

<label>标签

我们先来看下面一段代码:

<input type="radio" name="sex" /> 男
<input type="radio" name="sex" /> 女

对于上面这样的单选框,我们只有点击那个单选框(小圆圈)才可以选中,点击“男”、“女”这两个文字时是无法选中的;于是,label标签派上了用场。

本质上来讲,“男”、“女”这两个文字和input标签时没有关系的,而label就是解决这个问题的。我们可以通过label把input和汉字包裹起来作为整体。

解决方法如下:

<input type="radio" name="sex" id="nan" /> <label for="nan">男</label>
<input type="radio" name="sex" id="nv"  /> <label for="nv">女</label>

上方代码中,input元素要有一个id,然后label标签有一个for属性,和id相同,那么这个label和input就有绑定关系了。

当然了,复选框也有label:(任何表单元素都有label)

<input type="checkbox" id="kk" />
<label for="kk">10天内免登陆</label>  

 

ok,基本上HTML标签就给大家介绍到这里,基本上呢,标准的div+css布局,我们常用的的标签如下:

div  p  h1  span   a   img   ul   ol    dl    input

看到的朋友,加个关注,有什么问题及时留言,及时改正!

 

第一章、html

标签:inpu   鼠标   相对   位置   c盘   数字   www   tle   ati   

原文地址:https://www.cnblogs.com/xingguang009/p/9223782.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!