HTML 的豪华外套之 ”CSS“

前言

如果说 HTML 是一个英雄的话,那么 CSS 就是他的豪华战衣。

CSS是什么?

  1. CSS 指层叠样式表 (Cascading Style Sheets)。
  2. 可以对html页面进行美化,实现了显示内容的html代码和展示样式的css代码的分离,增强了页面的展示能力
  3. 样式定义如何显示 HTML 元素
  4. 样式通常存储在样式表中
  5. 把样式添加到 HTML 4.0 中,是为了解决内容与表现分离的问题
  6. 外部样式表可以极大提高工作效率
  7. 外部样式表通常存储在 CSS 文件中
  8. 多个样式定义可层叠为一个

为什幺用它?

. 相信很多人都进入过漫威世界,在漫威世界里有很多英雄,但他们除了拥有一个英雄的内心时,还拥有一套足以支撑强大内心的套装,比如唐尼的贾维斯系列,队长的盾牌,雷神的锤子等等,而 CSS 就是 HTML 的一套战甲,通过 CSS 可以更好的将 HTML所想表达用更好的方式将其呈现。

CSS 的超能力呈现:

1.语法简介

 . CSS 语法由三部分构成:选择器、属性和值:
 
                selector {property: value}
                
 .  选择器 : (selector)通常是你希望定义的 HTML 元素或标签
 
 .   属性 : 是你希望改变的内容,通俗的讲就是HTML的标签。
 
 .    值  : 就是想要他变成的效果命令,
              比如你想要他右对齐,就输出 right

1.1:在html页面中引入css样式的方式

	(1)通过标签上的style属性引入
		可以使用标签上的style属性为当前标签指定具体的css样式
		<div style="color:red">aaabbbccc</div>
		适用于个别标签添加样式,不建议在页面中大量使用,不利于代码后期的维护

	(2)通过style标签的方式引入
		在页面的<head>标签中, 
		通过在<style type="text/css"></style>标签内写css样式的方式引入css
		可以将所有的样式代码集中统一管理,初步实现了样式和html代码的分离
	
	(3)通过链接方式引入CSS样式
		在HTML页面的head标签中,
		通过一个
		<link rel="stylesheet" href="1.css" type="text/css"/>
		标签引入外部的css文件的内容 
		可以将所有的样式代码集中统一管理,真正实现了样式和html代码的分离

1.2:用语法调整表格内容所在方向,比Excel更轻松

  <style> : 标签用于为 HTML 文档定义样式信息。
         位置: style 元素位于 head 部分中。
         功能: 在 style 中,您可以规定在浏览器中如何呈现 HTML 文档。
         属性: type 属性是必需的,
               定义 style 元素的内容。唯一可能的值是 "text/css"。

. 至于没有说明的地方, 大部分是HTML的内容,
. 相关内容可以点击右边链接查看 用HTML做一个属于你的 “世界“

. 下图中:我们的选择器: td;属性: text-align; 值: right。
. 所以我们整个效果就是 td 规定的内容全部靠右对齐。
. (td:td所规定的的内容就是 1 2 3 4 (这是属于 HTML 的规定)所以效果就是 4个
. 数字全部靠右对齐)

在这里插入图片描述
2.标签介绍

  <div> 定义:
  
         <div> 可定义文档中的分区或节(division/section)。
         <div> 标签可以把文档分割为独立的、不同的部分。
                   它可以用作严格的组织工具 并且不使用任何格式与其关联。
        用法:
        
        <div> 是一个块级元素。这意味着它的内容自动地开始一个新行。
                  实际上,换行是 <div> 固有的唯一格式表现。
                  可以通过 <div> 的 class 或 id 应用额外的样式。


  <span> : 标签被用来组合文档中的行内元素。
  
    <p>:   标签定义段落。
            p 元素会自动在其前后创建一些空白。
            浏览器会自动添加这些空间,您也可以在样式表中规定。
     
  <div>与<p>的区别:   
  
            1、结构差距
             div与p均是一对最先与闭合标签。
             div以<div>最先,以</div>结束的一对标签。
             p以<p>开端,以</p>完结的一对标签。
        
            2、称谓分歧
             div是布局框架标签;
             p是段落标签,布局文章标签。
            
            3、div与p底子css属性
            div与p均独有一行的块元素标签,唯一鉴识,
            div凹凸没有距离间距,而p有。p自带间隔一行的间距,
            而div没有上下间隔间距
            p自带距离一行的间距,
         、

2.1 我们做这样一个来更好的认识这几个标签

. div样式:
。 添加2px红色边框、字体大小为30px、字体为微软雅黑
. span样式:
。 添加2px绿色边框、字体大小为30px、设置字体斜体
. p样式:
。 添加2px蓝色边框、字体大小为30px、设置字体加粗

在这里插入图片描述
3.选择器

3.1.基本选择器 
	所谓选择器就是可以帮助我们在HTML中选择出想要修饰的标签的技术
	
	3.1.1 : 标签名选择器	
	    格式: 标签名{...} 
     	通过标签名选择器可以选中指定名称的标签进行样式的修饰

. 图片内容解说

: 这里我们运用了标签名选择器,根据CSS的写法:CSS的内容必须定义在head中,所以我们将标签名选择器写到了head中,为了更好的理解div,span,p三个标签名,我们将其作为了模板,从图片中我们可以看出我们在head中定义标签的大小,在body中标签定义的内容,不需要做任何规划,他就自带我们head中定义的属性。这就好像唐尼拥有贾维斯,用的时候直接启动就可以了,不需要用的时刻在为其组装。

在这里插入图片描述

	3.1.2 : 类选择器
		class -- 通过HTML中通用的属性class, 可以为标签指定所属的类
	    class值相同的标签则为一类
		通过 .类名{} 的方式来为这一类的标签设置样式
		另外,可以为class指定多个值, 多个值之间用空格隔开,
		表示一个标签属于多个类
		多个类的样式会同时作用到这个标签上	

.图片内容解说

: 这里我们使用的是类选择器,类选择器作用功能和标签器选择器是差不多的,他们的区别在于类选择器比标签名选择器更加灵活,标签名选择器一旦定义了就无法更改,这个标签的内容格式都为我们定义的,但是类选择器就可以选择性进行,不需要只用一种格式。(但是一定要注意 定义类名的时候,类名前面有 " . ")。

在这里插入图片描述

	3.1.3 : id选择器 
		id -- 通过HTML中通用的属性id, 特点是id的值在整个HTML中是独一无二的,
		可以作为标签的唯一标识
		通过 #id值{} 的方式来为指定id值的标签设置样式	

图片解说

: id选择器和类选择器作用功能差不多,但是他们的区别在于id值是唯一的。

在这里插入图片描述

    3.1.4 : 使用注意事项	
    	优先级:id > class > 标签
	    同类标签: 后出现的会覆盖前面出现的

综合图片解说

: 为了更加深入了解这几个标签,我们综合的看一他们的区别:效果图。

   1.   *图中最大那个红色框,也就是<head></head>中的内容,*
         就是我们定义的 CSS “外套”
 
    *1.1 :  红色框中的蓝色框* 
    
       我们在这里使用了 CSS 的语法(selector {property: value})
       这样我们在进行页面内容布局的时候,就不需要一个一个去布置他们的外表
         
             div,span,p{border:1px solid red;}
              
           这个是为 div span p 设置了一个 1px红色边框
    (只要你在<body></body>中使用以上三个标签,他就自带 1px红色边框)
        
       对应效果图中的 :四个红色边框     

    *1.2 : 红框中的绿色框(该方法使用的是*标签名选择器*)*
    
       这里依旧使用了 CSS 的语法 (selector {property: value})
       只是单独的为 span 的内容进行了定义
   
             span{
                   background:#DDA0DD;
                   font-size:20px;
                  }
        
        这里标志着你只要在 span 标签中进行内容的写入
                             输出的内容自带这两个属性     
              
            大小对应所有的 span自定义内容,                 
            颜色对应效果图中 第二个span4  span5 自定义内容  
       (至于 span1 2 3 4(第一个) 使用了类选择器,所以颜色发生了变化)                 
                                     
    *1.3 : 红框中的红色框(该方法使用的是*类选择器*)*
    
       这里运用了 CSS 的语法(selector {property: value})
       然后自定义了两种标签:
          
               .c1{
          		   background:#8FBC8F;
                   color:green;
                   }
               .c2{
               	   background:#F0E68C;
                   color:blue;
                   }
                   
            这里标志着你的类选择器有两种选择,
      使用格式是在<body> <标签  class= 你定义的选择 ></标签></body>
     
      对应<body></body>中的:
     
      <div>div1自定义内容<span class="c2">span1自定义内容</span>
      div2自定义内容</div>
      <br/>
      <span class="c1 c2 "> span2自定义内容 </span>&nbsp;&nbsp;&nbsp;
      <span class="c1">span3自定义内容</span>&nbsp;&nbsp;&nbsp;
      <span class="c2">span4自定义内容</span>&nbsp;&nbsp;&nbsp;
      
     对应效果图中span 1 2 3 4 自定义内容
   
    *1.4:红框中的红色框(该方法使用的是*id选择器*)*
    
        这里依旧是使用了 CSS 的语法(selector {property: value})
        然后定义了一个拥有两个属性的标签:
     
             #p1{
                font-weight: bolder;
                text-indent: 20px;
                 }
                 
        这样标志着你已经定义好了 id选择器
        使用格式是在<body> <标签  id= “你定义的Id名字” ></标签></body>
        
        对应<body></body>中的:
        
        <p id ="p1">
           p1自定义内容<span>span4自定义内容</span>p2自定义内容</p>   
         
        对应效果图中的:
        
        p1 p2 span4(第二个) 自定义内容

在这里插入图片描述
3.2 扩展选择器

	基于基本选择器进行更加复杂选择的选择器
	
	3.2.1 :后代选择器
		在父选择器选择的元素内部, 选中指定的子孙元素, 进行样式的设置
		格式: 父元素选择器 子孙元素选择器{...}

图片解说

: 这里我们运用的是后代选择器,顾名思义,后代选择器通俗点讲,它有点像我们看的小说中的传承,它(div父元素选择器) 就像是第一位成为最强者的存在,由于他的血脉 (我们自定义的两个属性)强大,所以他的直系后代(span 子孙元素选择器)都可以继承他的血脉。

在这里插入图片描述

	3.2.2 :子元素选择器
		在父选择器选择的元素内部, 选中指定的子元素, 进行样式的设置
		格式: 父元素选择器>子元素选择器{...}

图片解说

: 这里我们运用的是子元素选择器,顾名思义,子元素选择器通俗点讲,它也用我们后代选择器的例子,它(div父元素选择器) 也是最强者的存在之一,但是他的血脉 (我们自定义的两个属性)也强大,但是并没有后代选择器器的那位强大,所以他只有儿子(span 子元素选择器)才可以继承他的血脉。所以对于 font 中的 span 就属于他的孙子了,他的孙子无法继承,只能传承一代。

在这里插入图片描述

	3.2.3 :分组选择器
		将多个选择器选中的元素统一进行样式的设置
		格式: 选择器1,选择器2,.....,选择器n{...}

图片解说

:这里我们运用了 分组选择器,分组选择器 相对比更好理解,他就和他的名字一样,让人一下就明白了;分组选择器就是分组定义属性;类似于我们做了一个文档,我们将所有重点文字,人物名称。。。等等多种元素凸显出来但要求几者又不同,这样级就可以使用分组选择器,将其分组管理,重要元素使用不同的标签名定义属性。

在这里插入图片描述

	3.2.4 :属性选择器
		选择具有指定属性条件的元素
		格式: 选择器[属性...]...{}

图片解说

: 这里我们运用的是属性选择器:属性选择器在为不带有 class 或 id 的表单设置样式时特别有用;在我使用它的时候,给我一种后代选择器的感觉,也是强者将自己的血脉之力传给了自己的儿子,从而他的儿子就可以拥有他的能力了。可能这个更加具体,强者直接指定了继承自己能力那个儿子。

   这里我们强调一下定义属性各代表什么意思:
   
   width  :  设置图像的宽度;
   
   display : 设置元素显示的方式;
   (bolck:是此元素将显示为块级元素,
             此元素前后会带有换行符)
             
  margin-bottom : 属性设置元素的下外边距;
    (通俗的讲:就是两个边框的中间的距离 )

   background-color : 设置背景颜色;  
   font-family :  定义字体;

在这里插入图片描述

	3.2.5 :相邻兄弟选择器
		如果两个元素具有相同的父亲,且紧邻在一起,则为相邻兄弟
		可以通过相邻兄弟选择器选择紧邻A元素后的B元素
		格式: 大哥+小弟{...}

图片解说

: 这里我们运用的是相邻兄弟选择器。这个要怎么理解呢?首先我们明确 兄弟的含义,无论发生什么我们都在你身边;所以我们这个相邻兄弟选择器就是一旦你确定他是你兄弟,是你大哥;你就要他站在一起,所以大哥在前面为你遮风挡雨,你只需要紧随其后,所以小弟括号里的内容是小弟的属性,他和大哥没关系;通过图我们就可以看出 无论把他们两个放在那里,小弟都会带着他的属性紧紧跟着大哥。

在这里插入图片描述

	3.2.6 :伪元素选择器
		伪元素选择器选择的不仅仅是某个元素,而是某个指定状态下的元素。
		可以选中元素的如下状态
		 :link 表示元素未被点击的状态
		 :hover 表示光标移入的状态
		 :active 表示元素被点击时的状态
		 :visited 表示元素被访问过后的状态
		 :text-decoration 属性规定添加到文本的修饰。
		 (我们代码中定义在了link hover active ,但真正能体现出
	      还是在active中,当你点击元素的时候观察,你点击的元素底部
	      出现了下划线;其他两个都是 none 意思是默认,不加任何修饰 )
		格式: 选择器:状态{}

图片解说

: 这张图有点厉害了(主要是不会做动态图,哈哈),只能结合不同的多种图片说明了;而且谷歌浏览器好像对于这个选择器有点问题问题,所以只能用IE了。具体详细的内容我感觉不用多说了,只要你仔细看图中定义的属性和我给你的标签代表含义,你一看就懂了。如果不懂欢迎留言。

在这里插入图片描述

综合图片解说

. 以下两张图片综合的展示了多种扩展选择器;
. 第一张是对于head中的内容
. 进行了规划,也就是使用了 CSS 为 HTML 做好了外套,
. 在body中进行内容输出就可以了
. 第二张结合body页面内容效果图进行详细解释。

在这里插入图片描述
在这里插入图片描述
4. CSS盒子模型

: 在css中, 所有的元素都可以看成是一个盒子(框),这些框都可以具有外边(margin)/边框(border)/内边距(padding),这些值的设定,会直接影响框与框之间的位置关系和框内容与框之间关系,以及边框的样式

		外边距
			margin 统一的设置外边距
			margin-top 设置顶部外边距
			margin-right 设置右部外边距
			margin-bottom 设置底部外边距
			margin-left 设置顶左外边距
			**外边距垂直方向上的合并。
		
		内边距
			padding
			padding-top
			padding-right
			padding-bottom
			padding-left
	
		边框
			border
			border-xxx-color 
			border-xxx-style
			border-xxx-width
			(其中xxx代表的是top left right bottom)
		
		以上属性
			可以使用属性单独指定上下左右的样式
			也可以使用复合属性指定样式, 如
			margin:10px 20px 30px 40px //上 右 下 左 顺时针方向
			margin:10px 20px 30px // 上 左右 下
			margin:10px 20px //上下 左右
			margin:10px //上下左右

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值