zoukankan      html  css  js  c++  java
  • html的标签和css样式

    标签的语法

    1. 标签由英文尖括号<>括起来,如<html>就是一个标签。

    2. html中的标签一般都是成对出现的,分开始标签结束标签。结束标签比开始标签多了一个/

    3. 标签与标签之间是可以嵌套的,但先后顺序必须保持一致,如:<div>里嵌套<p>,那么</p>必须放在</div>的前

    4. HTML标签不区分大小写,<h1><H1>是一样的,但建议小写,因为大部分程序员都以小写为准

    认识html文件基本结构

    1. <html></html>称为根标签,所有的网页标签都在<html></html>中。

    2. <head> 标签用于定义文档的头部,它是所有头部元素的容器。头部元素有<title><script>、 <style><link>、 <meta>等标签,头部标签在下一小节中会有详细介绍。

    3. 在<body></body>标签之间的内容是网页的主要内容,如<h1><p><a><img>等网页内容标签,在这里的标签中的内容会在浏览器中显示出来

    认识head标签

    下面这些标签可用在 head 部分:

    <head>
        <title>...</title>
        <meta>
        <link>
        <style>...</style>
        <script>...</script>
    </head>

    <title>标签:在<title>和</title>标签之间的文字内容是网页的标题信息,它会出现在浏览器的标题栏中。网页的title标签用于告诉用户和搜索引擎这个网页的主要内容是什么,搜索引擎可以通过网页标题,迅速的判断出网页的主题。每个网页的内容都是不同的,每个网页都应该有一个独一无二的title。

    了解HTML的代码注释

    <!--注释文字-->

    em标签标示强调

    了解<hx>标签,为你的网页添加标题

    文章的段落用<p>标签,那么文章的标题用什么标签呢?在本节我们将使用<hx>标签来制作文章的标题
    标题标签一共有6个,h1、h2、h3、h4、h5、h6分别为一级标题、二级标题、三级标题、四级标题、五级标题、六级标题。并且依据重要性递减。<h1>是最高的等级

    因为h1标签在网页中比较重要,所以一般h1标签被用在网站名称上。腾讯网站就是这样做的。如:<h1>腾讯网</h1>

    加入强调语气,使用<strong>和<em>标签

     但两者在强调的语气上有区别:<em> 表示强调,<strong> 表示更强烈的强调。并且在浏览器中<em> 默认用斜体表示,<strong> 用粗体表示。两个标签相比,目前国内前端程序员更喜欢使用<strong>表示强调。

    使用<span>标签为文字设置单独样式

    这一小节讲解<span>标签,我们对<em><strong><span>这三个标签进行一下总结:

    1. <em><strong>标签是为了强调一段话中的关键字时使用,它们的语义是强调。

    2. <span>标签是没有语义的,它的作用就是为了设置单独的样式用的。

    <q>标签,短文本引用

      想在你的html中加一段引用吗?比如在你的网页的文章里想引用某个作家的一句诗,这样会使你的文章更加出彩,那么<q>标签是你所需要的

    注意这里用<q>标签的真正关键点不是它的默认样式双引号(如果这样我们不如自己在键盘上输入双引号就行了),而是它的语义:引用别人的话

    <blockquote>标签,长文本引用

     <blockquote>的作用也是引用别人的文本。但它是对长文本的引用,如在文章中引入大段某知名作家的文字,这时需要这个标签

    浏览器对<blockquote>标签的解析是缩进样式。

    使用<br>标签分行显示文本

    语法:

    xhtml1.0写法:

    <br />

    html4.01写法:

    <br>

    大家注意,现在一般使用 xhtml1.0 的版本的写法(其它标签也是),这种版本比较规范。

    总结:在 html 代码中输入回车、空格都是没有作用的。在html文本中想输入回车换行,就必须输入<br />

    为你的网页中添加一些空格

    在上一节的例子,我们已经讲解过在html代码中输入空格回车都是没有作用的。要想输入空格,必须写入&nbsp;

    语法:

    &nbsp;

    认识<hr>标签,添加水平横线

    语法:

    html4.01版本 <hr>

    xhtml1.0版本 <hr />

    注意:

    1. <hr />标签和<br />标签一样也是一个空标签,所以只有一个开始标签,没有结束标签。

    2. <hr />标签的在浏览器中的默认样式线条比较粗,颜色为灰色,可能有些人觉得这种样式不美观,没有关系,这些外在样式在我们以后学习了css样式表之后,都可以对其修改。

    3. 大家注意,现在一般使用 xhtml1.0 的版本(其它标签也是),这种版本比较规范。

    <address>标签,为网页加入地址信息

    一般网页中会有一些网站的联系地址信息需要在网页中展示出来,这些联系地址信息如公司的地址就可以<address>标签。也可以定义一个地址(比如电子邮件地址)、签名或者文档的作者身份。

    语法:

    <address>联系地址信息</address>

    在浏览器上显示的样式为斜体,如果不喜欢斜体,当然可以,可以在后面的课程中使用 css 样式来修改它<address>标签的默认样式。

    想加入一行代码吗?使用<code>标签

    在介绍语言技术的网站中,避免不了在网页中显示一些计算机专业的编程代码,当代码为一行代码时,你就可以使用<code>标签了,如下面例子:

    <code>var i=i+300;</code>

    注意:在文章中一般如果要插入多行代码时不能使用<code>标签了。

    语法:

    <code>代码语言</code>

    注:如果是多行代码,可以使用<pre>标签。

    使用<pre>标签为你的网页加入大段代码

    <pre>语言代码段</pre>

    <pre> 标签的主要作用:预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符

    注意:<pre> 标签不只是为显示计算机的源代码时用的,在你需要在网页中预显示格式时都可以使用它,只是<pre>标签的一个常见应用就是用来展示计算机的源代码。

    使用<dl></dl><dt></dt><dd></dd> 

    <dl></dl>用来创建一个普通的列表,<dt></dt>用来创建列表中的上层项目,<dd></dd>用来创建列表中最下层项目,<dt></dt>和<dd></dd>都必须放在<dl></dl>标志对之间

    <html> 

    <head> 

    <title>一个普通列表</title> 

    </head> 

    <body text="blue"> 

    <dl> 

    <dt>中国城市</dt> 

    <dd>北京 </dd> 

    <dd>上海 </dd> 

    <dd>广州 </dd> 

    <dt>美国城市</dt> 

    <dd>华盛顿 </dd> 

    <dd>芝加哥 </dd> 

    </dl>

    </body>

    </html>

    使用ul,添加新闻信息列表

    在浏览网页时,你会发现网页上有很多信息的列表,如新闻列表、图片列表,

    ul-li是没有前后顺序的信息列表。

    语法:

    <ul>
      <li>信息</li>
      <li>信息</li>
       ......
    </ul>

    举例:

    <ul>
      <li>精彩少年</li>
      <li>美丽突然出现</li>
      <li>触动心灵的旋律</li>
    </ul>

    使用ol,添加图书销售排行榜

    如果想在网页中展示有前后顺序的信息列表,怎么办呢?

    语法:

    <ol>
       <li>信息</li>
       <li>信息</li>
       ......
    </ol>
    <ol>在网页中显示的默认样式一般为:每项<li>前都自带一个序号,序号默认从1开始,

    认识div在排版中的作用

    在网页制作过程过中,可以把一些独立的逻辑部分划分出来,放在一个<div>标签中,这个<div>标签的作用就相当于一个容器。

    语法:

    <div>…</div>

    确定逻辑部分:

    什么是逻辑部分?它是页面上相互关联的一组元素。如网页中的独立的栏目版块,就是一个典型的逻辑部分。如下图所示:图中用红色边框标出的部分就是一个逻辑部分,就可以使用<div>标签作为容器。

    给div命名,使逻辑更加清晰

    在上一小节中,我们把一些标签放进<div>里,划分出一个独立的逻辑部分。为了使逻辑更加清晰,我们可以为这一个独立的逻辑部分设置一个名称,用id属性来为<div>提供唯一的名称,这个就像我们每个人都有一个身份证号,这个身份证号是唯一标识我们的身份的,也是必须唯一的。

    如下两图进行比较,如果设计师把两个图给你,哪个图你看上去能更快的理解呢?是不是右边的那幅图呢。

    语法:

    <div  id="版块名称">…</div>

    table标签,认识网页上的表格

    有时候我们需要在网页上展示一些数据,如某公司想在网页上展示公司的库存清单。如下表:

    想在网页上展示上述表格效果可以使用以下代码:

    创建表格的四个元素:

    table、tbody、tr、th、td

    1、<table>…</table>:整个表格以<table>标记开始、</table>标记结束。

    2、<tbody>…</tbody>:当表格内容非常多时,表格会下载一点显示一点,但如果加上<tbody>标签后,这个表格就要等表格内容全部下载完才会显示。如右侧代码编辑器中的代码。

    3、<tr>…</tr>:表格的一行,所以有几对tr 表格就有几行。

    4、<td>…</td>:表格的一个单元格,一行中包含几对<td>...</td>,说明一行中就有几列。

    5、<th>…</th>:表格的头部的一个单元格,表格表头。

    6、表格中列的个数,取决于一行中数据单元格的个数。

    用css样式,为表格加入边框

    Table表格在没有添加css样式之前,是没有边框的。这样不便于我们后期合并单元格知识点的讲解,所以在这一节中我们为表格添加一些样式,为它添加边框。

    在右侧代码编辑器中添加如下代码:

    <style type="text/css">
    table tr td,th{border:1px solid #000;}
    </style>

    上述代码是用css样式代码(后面章节会详细讲解),为thtd单元格添加粗细为一个象素的黑色边框

    在table前面加这段代码,即可在表格中加边框

    caption标签,为表格添加标题和摘要

    表格还是需要添加一些标签进行优化,可以添加标题摘要。代码如下:

    摘要

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

        语法:<table summary="表格简介文本">摘要,不能显示在网页上的

                   <caption>标题文本</caption>

    使用<a>标签,链接到别一个页面

    使用<a>标签可实现超链接,它在网页制作中可以说是无处不在,只要有链接的地方,就会有这个标签。

    语法:

    <a  href="目标网址"  title="鼠标滑过显示的文本">链接显示的文本</a>

    例如:

    <a  href="http://www.imooc.com"  title="点击进入慕课网">click here!</a>

    上面例子作用是单击click here!文字,网页链接到http://www.imooc.com这个网页。

    在新建浏览器窗口中打开链接

    <a>标签在默认情况下,链接的网页是在当前浏览器窗口中打开,有时我们需要在新的浏览器窗口中打开。

    如下代码:

    <a href="目标网址" target="_blank">click here!</a>

    :hover

    在CSS1中此伪类仅可用于a对象。且对于无href属性(特性)的a对象,此伪类不发生作用。在CSS2中此伪类可以应用于任何对象。

    语法:编辑

    Selector: hover{sRules}

    2说明:编辑

    设置对象在其鼠标悬停时的样式表属性。
    目前IE5.5+仅支持CSS1中的:hover。

    3示例:编辑

    a:hover { font-size: 14pt; text-decoration: underline; color: blue; }
    a:hover span{ color:red; }
    请您将鼠标移到这个a对象上(当鼠标放在所设置的链接处,就会在文字的下方显示红色的横线),点击,看看会发生什么。然后您就会明白这个伪类的意义。

    使用mailto在网页中链接Email地址

    <a>标签还有一个作用是可以链接Email地址,使用mailto能让访问者便捷向网站管理者发送电子邮件。我们还可以利用mailto做许多其它事情。下面一一进行讲解,请看详细图示:

    注意:如果mailto后面同时有多个参数的话,第一个参数必须以“?”开头,后面的参数每一个都以“&”分隔。

    下面是一个完整的实例:

    在浏览器中显示的结果:

    发送

    认识<img>标签,为网页插入图片

    在网页的制作中为使网页炫丽美观,肯定是缺少不了图片,可以使用<img>标签来插入图片。

    语法:

    <img src="图片地址" alt="下载失败时的替换文本" title = "提示文本">

    举例:

    <img src = "myimage.gif" alt = "My Image" title = "My Image" />

    讲解:

    1、src:标识图像的位置;

    2、alt:指定图像的描述性文本,当图像不可见时(下载不成功时),可看到该属性指定的文本;

    3、title:提供在图像可见时对图像的描述(鼠标滑过图片时显示的文本);

    4、图像可以是GIF,PNG,JPEG格式的图像文件。

    使用表单标签,与用户交互

    网站怎样与用户进行交互?答案是使用HTML表单(form)。表单是可以把浏览者输入的数据传送到服务器端,这样服务器端程序就可以处理表单传过来的数据。

    语法:

    <form   method="传送方式"   action="服务器文件">

    讲解:

    1.<form> :<form>标签是成对出现的,以<form>开始,以</form>结束。

    2.action 浏览者输入的数据被传送到的地方,比如一个PHP页面(save.php)。

    3.method  数据传送的方式(get/post)。

    <form    method="post"   action="save.php">
            <label for="username">用户名:</label>
            <input type="text" name="username" />
            <label for="pass">密码:</label>
            <input type="password" name="pass" />
    </form>

    注意:

    1、所有表单控件(文本框、文本域、按钮、单选框、复选框等)都必须放在<form></form>标签之间(否则用户输入的信息可提交不到服务器上哦!)。

    2、method:post/get的区别这一部分内容属于后端程序员考虑的问题

    <form method="post" action="save.php">
    <label for="username">用户名:</label>
    <input type="text" name="username" id="username" value="" />
    <label for="pass">密码:</label>
    <input type="password" name="pass" id="pass" value="" />
    <input type="submit" value="确定" name="submit" />
    <input type="reset" value="重置" name="reset" />

    运行后的结果是:

         

    文本输入框、密码输入框

    当用户要在表单中键入字母、数字等内容时,就会用到文本输入框。文本框也可以转化为密码输入框

    语法

    <form>
       <input type="text/password" name="名称" value="文本" />
    </form>

    1、type:

       当type="text"时,输入框为文本输入框;

       当type="password"时, 输入框为密码输入框。

    2、name:为文本框命名,以备后台程序ASP 、PHP使用。

    3、value:为文本输入框设置默认值。(一般起到提示作用)

    举例

    <form>
      姓名:
      <input type="text" name="myName">
      <br/>
      密码:
      <input type="password" name="pass">
    </form>

    文本域,支持多行文本输入

    当用户需要在表单中输入大段文字时,需要用到文本输入域。

    语法

    <textarea  rows="行数" cols="列数">文本</textarea>

    1、<textarea>标签是成对出现的,以<textarea>开始,以</textarea>结束。

    2cols :多行输入域的列数

    3rows :多行输入域的行数

    4、在<textarea></textarea>标签之间可以输入默认值

    举例

    <form  method="post" action="save.php">
            <label>联系我们</label>
            <textarea cols="50" rows="10" >在这里输入内容...</textarea>
    </form>

    注意:代码中的<label>标签在本章5-9中讲解。

    在浏览器中显示结果:

    使用单选框、复选框,让用户选择

    在使用表单设计调查表时,为了减少用户的操作,使用选择框是一个好主意,html中有两种选择框,即单选框复选框,两者的区别是单选框中的选项用户只能选择一项,而复选框中用户可以任意选择多项,甚至全选。请看下面的例子:

    语法:

    <input   type="radio/checkbox"   value="值"    name="名称"   checked="checked"/>

    1、type:

       当 type="radio" 时,控件为单选框

       当 type="checkbox" 时,控件为复选框

    2、value:提交数据到服务器的值(后台程序PHP使用)

    3、name:为控件命名,以备后台程序 ASP、PHP 使用

    4、checked:当设置 checked="checked" 时,该选项被默认选中

    如下面代码:

    注意:代码中的<label>标签在本章 5-9 中有讲解。

    在浏览器中显示的结果:

    注意:同一组的单选按钮,name 取值一定要一致,比如上面例子为同一个名称“radioLove”,这样同一组的单选按钮才可以起到单选的作用。

    使用下拉列表框,节省空间

    下拉列表在网页中也常会用到,它可以有效的节省网页空间。既可以单选、又可以多选。如下代码:

    讲解:

    1、value:

    2、selected="selected"

    设置selected="selected"属性,则该选项就被默认选中。,如下图显示购物被默认选中

     

    在浏览器中显示的结果:

     

     

     

    使用下拉列表框进行多选

     

    下拉列表也可以进行多选操作,在<select>标签中设置multiple="multiple"属性,就可以实现多选功能,在 widows 操作系统下,进行多选时按下Ctrl键同时进行单击(在 Mac下使用 Command +单击),可以选择多个选项。如下代码:

    使用提交按钮,提交数据

    在表单中有两种按钮可以使用,分别为:提交按钮、重置。这一小节讲解提交按钮:当用户需要提交表单信息到服务器时,需要用到提交按钮

    语法

    <input   type="submit"   value="提交">

    type:只有当type值设置为submit时,按钮才有提交作用

    value按钮上显示的文字

    举例

    值得注意:type="text" /"textarea" / "password" /"submit"(提交按钮) /"reset"(重置按钮)



    使用重置按钮,重置表单信息

    当用户需要重置表单信息到初始时的状态时,比如用户输入“用户名”后,发现书写有误,可以使用重置按钮使输入框恢复到初始状态。只需要把type设置为"reset"就可以。

    语法

    <input type="reset" value="重置">

    type:只有当type值设置为reset时,按钮才有重置作用

    value按钮上显示的文字

    举例

     

    form表单中的label标签

    小伙伴们,你们在前面学习表单各种控件的时候,有没有发现一个标签--label,这一小节就来揭晓它的作用。

    label标签不会向用户呈现任何特殊效果,它的作用是为鼠标用户改进了可用性。如果你在 label 标签内点击文本,就会触发此控件。就是说,当用户单击选中该label标签时,浏览器就会自动将焦点转到和标签相关的表单控件上(就自动选中和该label标签相关连的表单控件上)。

    语法:

    <label for="控件id名称">

    注意:标签的 for 属性中的值应当与相关控件的 id 属性值一定要相同。

    例子:

    <form>
      <label for="male">男</label>
      <input type="radio" name="sex" id="male" />
      <br />
      <label for="female">女</label>
      <input type="radio" name="sex" id="female" />
      <label for="email">输入你的邮箱地址</label>
      <input type="email" id="email" placeholder="Enter email">
    </form>

    认识CSS样式

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

    如下列代码:

    p{
       font-size:12px;
       color:red;
       font-weight:bold;
    }

    使用CSS样式的一个好处是通过定义某个样式,可以让不同网页位置的文字有着统一的字体、字号或者颜色等。

    例如:

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>认识CSS样式</title>
    <style type="text/css">
    p{
    font-size:20px;/*设置文字字号*/
    color:red;/*设置文字颜色*/
    font-weight:bold;/*设置字体加粗*/
    }
    </style>
    </head>
    <body>
    <p>慕课网,超酷的互联网、IT技术免费学习平台,创新的网络一站式学习、实践体验;服务及时贴心,内容专业、有趣易学。专注服务互联网工程师快速成为技术高手!</p>
    </body>
    </html>

    CSS样式的优势

    第一步:把这三个短语用<span></span>括起来。(见右边代码编辑器13行)

    第二步:写入下列代码:(见右边代码编辑器7-8行)

    span{
        color:red;
    }

    观察结果窗口文字的颜色是否变为红色了.如下所示:

    span{
    color:blue;
    }
    </style>
    </head>
    <body>
    <p>慕课网,<span>超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;<span>服务及时贴心</span>,内容专业、<span>有趣易学</span>。专注服务互联网工程师快速成为技术高手!</p>

    CSS代码语法

    css 样式由选择符声明组成,而声明又由属性组成,如下图所示:

    选择符:又称选择器,指明网页中要应用样式规则的元素,如本例中是网页中所有的段(p)的文字将变成蓝色,而其他的元素(如ol)不会受到影响。

    声明:在英文大括号“{}”中的的就是声明,属性和值之间用英文冒号“:”分隔。当有多条声明时,中间可以英文分号“;”分隔,如下所示:

    p{font-size:12px;color:red;}

    注意:

    1、最后一条声明可以没有分号,但是为了以后修改方便,一般也加上分号。

    2、为了使用样式更加容易阅读,可以将每条代码写在一个新行内,如下所示:

    p{
       font-size:12px;
       color:red;

    CSS注释代码

    就像在Html的注释一样,在CSS中也有注释语句:用/*注释语句*/来标明(Html中使用<!--注释语句-->)。就像下面代码:

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

    CSS样式可以写在哪些地方呢?从CSS 样式代码插入的形式来看基本可以分为以下3种:内联式、嵌入式和外部式三种。这一小节先来讲解内联式。

    内联式css样式表就是把css代码直接写在现有的HTML标签中,如下面代码:

    <p style="color:red">这里文字是红色。</p>

    注意要写在元素的开始标签里,下面这种写法是错误的:

    <p>这里文字是红色。</p style="color:red">

    并且css样式代码要写在style=""双引号中,如果有多条css样式代码设置可以写在一起,中间用分号隔开。如下代码:

    <p style="color:red;font-size:12px">这里文字是红色。</p>

    例如:

    span{
    color:red;
    }
    </style>
    </head>
    <body>           内联式
    <p>慕课网,<span style="color:blue">超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;<span>服务及时贴心</span>,内容专业、<span>有趣易学</span>。专注服务互联网工程师快速成为技术高手!</p>

    外部式css样式,写在单独的一个文件中

    外部式css样式(也可称为外联式)就是把css代码写一个单独的外部文件中,这个css样式文件以“.css”为扩展名,在<head>内(不是在<style>标签内)使用<link>标签将css样式文件链接到HTML文件内,如下面代码:

    <link href="base.css" rel="stylesheet" type="text/css" />

    注意:

    1、css样式文件名称以有意义的英文字母命名,如 main.css。

    2、rel="stylesheet" type="text/css" 是固定写法不可修改。

    3、<link>标签位置一般写在<head>标签之内。

    三种方法的优先级

    有的小伙伴问了,如果有一种情况:对于同一个元素我们同时用了三种方法设置css样式,那么哪种方法真正有效呢?在右边编辑器就出现了这种情况

    1、使用内联式CSS设置“超酷的互联网”文字为粉色

    2、然后使用嵌入式CSS来设置文字为红色

    3、最后又使用外部式设置文字为蓝色(style.css文件中设置)。

    但最终你可以观察到“超酷的互联网”这个短词的文本被设置为了粉色。因为这三种样式是有优先级的,记住他们的优先级:内联式 > 嵌入式 > 外部式

    但是嵌入式>外部式有一个前提:嵌入式css样式的位置一定在外部式的后面。如右代码编辑器就是这样,<link href="style.css" ...>代码在<style type="text/css">...</style>代码的前面(实际开发中也是这么写的)。感兴趣的小伙伴可以试一下,把它们调换顺序,再看他们的优先级是否变化。

    其实总结来说,就是--就近原则(离被设置元素越近优先级别越高)

    但注意上面所总结的优先级是有一个前提:内联式、嵌入式、外部式样式表中css样式是在的相同权值的情况下,什么是权值呢?在后面的9-2小节中会讲解到。

    html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>嵌入式css样式</title>
    <link href="style.css" rel="stylesheet" type="text/css">
    <style type="text/css">
    span{
    color:red;
    }
    </style>
    </head>
    <body>                                                   粉红色字体                                                                                                               红色字体
    <p>慕课网,<span style="color:pink">超酷的互联网</span>、IT技术免费学习平台,创新的网络一站式学习、实践体验;<span>服务及时贴心</span>,内容专业、有趣易学。专注服务互联网工程师快速成为技术高手!</p>
    </body>
    </html>

    什么是选择器?

    每一条css样式声明(定义)由两部分组成,形式如下:

    选择器{
        样式;
    }

    标签选择器

    标签选择器其实就是html代码中的标签。如右侧代码编辑器中的<html>、<body>、<h1>、<p>、<img>。例如下面代码:

    p{font-size:12px;line-height:1.6em;}

    上面的css样式代码的作用:为p标签设置12px字号,行间距设置1.6em的样式。

    类选择器

    语法:

    .类选器名称{css样式代码;}

    注意:

    1、英文圆点开头

    2、其中类选器名称可以任意起名(但不要起中文噢)

    <style type="text/css">
    .stress{
    color:red;
    }
    .blue{
    color:blue;
    }

    </style>
    </head>
    <body>
    <h1>勇气</h1>
    <p>三年级时,我还是一个<span class="stress">胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个<span class="stress">勇气</span>来回答老师提出的问题。学校举办的活动我也没勇气参加。</p>
    <p>到了三年级下学期时,我们班上了一节<span class="blue">公开课</span>,老师提出了一个很简单的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>

    D选择器

    在很多方面,ID选择器都类似于类选择符,但也有一些重要的区别:

    1、为标签设置id="ID名称",而不是class="类名称"。

    2、ID选择符的前面是井号(#)号,而不是英文圆点(.)

    右侧代码编辑器中就是一个ID选择符的完整实例。

    类和ID选择器的区别

    学习了类选择器和ID选择器,我们会发现他们之间有很多的相似处,是不是两者可以通用呢?我们不要着急先来总结一下他们的相同点和不同点:

    相同点:可以应用于任何元素
    不同点:

    1、ID选择器只能在文档中使用一次。与类选择器不同,在一个HTML文档中,ID选择器只能使用一次,而且仅一次。而类选择器可以使用多次。

    下面代码是正确的:

     <p>三年级时,我还是一个<span class="stress">胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个<span class="stress">勇气</span>来回答老师提出的问题。</p>

    而下面代码是错误的:

     <p>三年级时,我还是一个<span id="stress">胆小如鼠</span>的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个<span id="stress">勇气</span>来回答老师提出的问题。</p>

    2、可以使用类选择器词列表方法为一个元素同时设置多个样式。我们可以为一个元素同时设多个样式,但只可以用类选择器的方法实现,ID选择器是不可以的(不能使用 ID 词列表)。

    下面的代码是正确的(完整代码见右侧代码编辑器)

    .stress{
        color:red;
    }
    .bigsize{
        font-size:25px;
    }
    <p>到了<span class="stress bigsize">三年级</span>下学期时,我们班上了一节公开课...</p>
    

    上面代码的作用是为“三年级”三个文字设置文本颜色为红色并且字号为25px。

    下面的代码是不正确的(完整代码见右侧代码编辑器)

    #stressid{
        color:red;
    }
    #bigsizeid{
        font-size:25px;
    }
    <p>到了<span id="stressid bigsizeid">三年级</span>下学期时,我们班上了一节公开课...</p>

    上面代码不可以实现为“三年级”三个文字设置文本颜色为红色并且字号为25px的作用。

    子选择器

    还有一个比较有用的选择器子选择器,即大于符号(>),用于选择指定标签元素的第一代子元素。如右侧代码编辑器中的代码:

    .food>li{border:1px solid red;}

    这行代码会使class名为food下的子元素li(水果、蔬菜)加入红色实线边框。

    <style type="text/css">
    .food>li{border:1px solid red;}/*添加边框样式(粗细为1px, 颜色为红色的实线)*/
    .first>span{border:1px solid red;}      li和span就是子选择器
    </style>
    </head>
    <body>
    <p class="first">三年级时,<span >我还是一个胆小如鼠的小女孩</span>,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。</p>
    <h1>食物</h1>                若class="first"放在<span 后面>则不会显示红色框,因为他是子选择器
    <ul class="food">
    <li>水果
    <ul>
    <li>香蕉</li>
    <li>苹果</li>
    <li>梨</li>
    </ul>
    </li>

    通用选择器

    通用选择器是功能最强大的选择器,它使用一个(*)号指定,它的作用是匹配html中所有标签元素,如下使用下面代码使用html中任意标签元素字体颜色全部设置为红色:

    * {color:red;}

    伪类选择符

    更有趣的是伪类选择符,为什么叫做伪类选择符,它允许给html不存在的标签(标签的某种状态)设置样式,比如说我们给html中一个标签元素的鼠标滑过的状态来设置字体颜色:

    a:hover{color:red;}

    上面一行代码就是为 a 标签鼠标滑过的状态设置字体颜色变红。这样就会使第一段文字内容中的“胆小如鼠”文字加入鼠标滑过字体颜色变为红色特效。

    关于伪选择符:

        关于伪类选择符,到目前为止,可以兼容所有浏鉴器的“伪类选择符”就是 a 标签上使用 :hover 了(其实伪类选择符还有很多,尤其是 css3 中,但是因为不能兼容所有浏览器,本教程只是讲了这一种最常用的)。其实 :hover 可以放在任意的标签上,比如说 p:hover,但是它们的兼容性也是很不好的,所以现在比较常用的还是 a:hover 的组合

    分组选择符

    当你想为html中多个标签元素设置同一个样式时,可以使用分组选择符(,),如下代码为右侧代码编辑器中的h1、span标签同时设置字体颜色为红色:

    h1,span{color:red;}

    它相当于下面两行代码:

    h1{color:red;}
    span{color:red;}
    例如:
    .first,#second span{color:green;}

    .first,#second span{color:green;}

    </style>
    </head>
    <body>
    <h1>勇气</h1>
    <p class="first"><span>三年级时,我还是一个胆小如的小女孩,上课从来不敢回答老师提出的问题,生怕回答错了老师会批评我。就一直没有这个勇气来回答老师提出的问题。学校举办的活动我也没勇气参加。</span></p>
    <p id="second">到了三年级下学期时,我们班上了一节公开课,老师提出了一个很<span>简单</span>的问题,班里很多同学都举手了,甚至成绩比我差很多的,也举手了,还说着:"我来,我来。"我环顾了四周,就我没有举手。</p>

    CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代。比如下面代码:如某种颜色应用于p标签,这个颜色设置不仅应用p标签,还应用于p标签中的所有子元素文本,这里子元素为span标签。

    p{color:red;}
    
    <p>三年级时,我还是一个<span>胆小如鼠</span>的小女孩。</p>

    可见右侧结果窗口中p中的文本与span中的文本都设置为了红色。但注意有一些css样式是不具有继承性的。如border:1px solid red;

    p{border:1px solid red;}
    
    <p>三年级时,我还是一个<span>胆小如鼠</span>的小女孩。</p>

    在上面例子中它代码的作用只是给p标签设置了边框为1像素、红色、实心边框线,而对于子元素span是没用起到作用的。

    特殊性

    有的时候我们为同一个元素设置了不同的CSS样式代码,那么元素会启用哪一个CSS样式呢?我们来看一下面的代码:

    p{color:red;}
    .first{color:green;}
    <p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩。</p>

    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*/

    注意:还有一个权值比较特殊--继承也有权值但很低,有的文献提出它只有0.1,所以可以理解为继承的权值最低。

    层叠

    我们来思考一个问题:如果在html文件中对于同一个元素可以有多个css样式存在并且这多个css样式具有相同权重值怎么办?好,这一小节中的层叠帮你解决这个问题。

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

    如下面代码:

    p{color:red;}
    p{color:green;}
    <p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩。</p>

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

    所以前面的css样式优先级就不难理解了:

    内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)

    重要性

    我们在做网页代码的时,有些特殊的情况需要为某些样式设置具有最高权值,怎么办?这时候我们可以使用!important来解决。

    如下代码:

    p{color:red!important;}
    p{color:green;}
    <p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩。</p>

    这时 p 段落中的文本会显示的red红色。

    注意:!important要写在分号的前面

    这里注意当网页制作者不设置css样式时,浏览器会按照自己的一套样式来显示网页。并且用户也可以在浏览器中设置自己习惯的样式,比如有的用户习惯把字号设置为大一些,使其查看网页的文本更加清楚。这时注意样式优先级为:浏览器默认的样式 < 网页制作者样式 < 用户自己设置的样式,但记住!important优先级样式是个例外,权值高于用户自己设置的样式。

    文字排版--字体

    我们可以使用css样式为网页中的文字设置字体、字号、颜色等样式属性。下面我们来看一个例子,下面代码实现:为网页中的文字设置字体为宋体。

    body{font-family:"宋体";}

    现在一般网页喜欢设置“微软雅黑”,如下代码:

    body{font-family:"Microsoft Yahei";}

    文字排版--字号、颜色

    可以使用下面代码设置网页中文字的字号为12像素,并把字体颜色设置为#666(灰色):

    body{font-size:12px;color:#666}

    文字排版--粗体

    我们还可以使用css样式来改变文字的样式:粗体、斜体、下划线、删除线,可以使用下面代码实现设置文字以粗体样式显示出来。

    p span{font-weight:bold;}

    文字排版--斜体

    以下代码可以实现文字以斜体样式在浏览器中显示:

    p a{font-style:italic;}
    

    文字排版--下划线

    有些情况下想为文字设置为下划线样式,这样可以在视觉上强调文字,可以使用下面代码来实现:

    p a{text-decoration:underline;}
    

    字排版--删除线

    如果想在网页上设置删除线怎么办

    上图中的原价上的删除线使用下面代码就可以实现:

     .oldPrice{text-decoration:line-through;}

    这个88元就是设置的删除线

    段落排版--缩进

    中文文字中的段前习惯空两个文字的空白,这个特殊的样式可以用下面代码来实现:

    p{text-indent:2em;}
    注意:2em的意思就是文字的2倍大小。

    段落排版--行间距(行高)

    这一小节我们来学习一下另一个在段落排版中起重要作用的行间距(行高)属性(line-height),如下代码实现设置段落行间距为1.5倍。

    p{line-height:1.5em;}

    段落排版--中文字间距、字母间距

    中文字间隔、字母间隔设置:

    如果想在网页排版中设置文字间隔或者字母间隔就可以使用    letter-spacing 来实现,如下面代码:

    h1{
        letter-spacing:50px;
    }
    ...
    <h1>了不起的盖茨比</h1>
    

    注意:这个样式使用在英文单词时,是设置字母与字母之间的间距。

    单词间距设置

    如果我想设置英文单词之间的间距呢?可以使用 word-spacing 来实现。如下代码:

    h1{
        word-spacing:50px;
    }
    ...
    <h1>welcome to imooc!</h1>

    段落排版--对齐

    想为块状元素中的文本、图片设置居中样式吗?可以使用text-align样式代码,如下代码可实现文本居中显示。(那么什么是块状元素呢?在后面的11-1、11-2小节中会讲到。)

    h1{
        text-align:center;
    }
    <h1>了不起的盖茨比</h1>

    同样可以设置居左:

    h1{
        text-align:left;
    }
    <h1>了不起的盖茨比</h1>

    还可以设置居右:

    h1{
        text-align:right;
    }
    <h1>了不起的盖茨比</h1>

    元素分类

    在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素内联元素(又叫行内元素)内联块状元素

    常用的块状元素有:

    <div>、<p>、<h1>...<h6>、<ol>、<ul>、<dl>、<table>、<address>、<blockquote> 、<form>

    常用的内联元素有:

    <a>、<span>、<br>、<i>、<em>、<strong>、<label>、<q>、<var>、<cite>、<code>

    常用的内联块状元素有:

    <img>、<input>

    元素分类--块级元素

    什么是块级元素?在html中<div>、 <p>、<h1>、<form>、<ul> 和 <li>就是块级元素。设置display:block就是将元素显示为块级元素。如下代码就是将内联元素a转换为块状元素,从而使a元素具有块状元素特点。

    a{display:block;}

    块级元素特点:

    1、每个块级元素都从新的一行开始,并且其后的元素也另起一行。(真霸道,一个块级元素独占一行)

    2、元素的高度、宽度、行高以及顶和底边距都可设置。

    3、元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。

    元素分类--内联元素

    在html中,<span>、<a>、<label>、<input>、 <strong> 和<em>就是典型的内联元素行内元素)(inline)元素。当然块状元素也可以通过代码display:inline将元素设置为内联元素。如下代码就是将块状元素div转换为内联元素,从而使 div 元素具有内联元素特点。

     div{
         display:inline;
     }
    
    ......
    
    <div>我要变成内联元素</div>

    内联元素特点:

    1、和其他元素都在一行上;

    2、元素的高度、宽度及顶部和底部边距不可设置;

    3、元素的宽度就是它包含的文字或图片的宽度,不可改变。

    元素分类--内联块状元素

    内联块状元素(inline-block就是同时具备内联元素、块状元素的特点,代码display:inline-block就是将元素设置为内联块状元素。(css2.1新增),<img>、<input>标签就是这种内联块状标签。

    inline-block 元素特点:

    1、和其他元素都在一行上;

    2、元素的高度、宽度、行高以及顶和底边距都可设置。

  • 相关阅读:
    使用Jquery EasyUi常见问题解决方案
    短信平台接口调用方法参考
    linux查找日志技巧
    Linux 上传 启动 删除...命令总结
    java 验证手机号码、电话号码(包括最新的电信、联通和移动号码)
    Web Services 中XML、SOAP和WSDL的一些必要知识
    Mac环境下配置PhpStorm
    Python爬虫刷回复
    Django和layim实现websocket
    Python爬虫刷回复
  • 原文地址:https://www.cnblogs.com/yupeter007/p/4652658.html
Copyright © 2011-2022 走看看