CSS(一)本周总结

简介: CSS是层叠样式表,样式定义如何显示HTML元素。 一个简单的css文档就可以改变所有页面的布局和外观。

CSS每周知识总结

一、css简介

     CSS是层叠样式表,样式定义如何显示HTML元素。
     一个简单的css文档就可以改变所有页面的布局和外观。
     
    
   

二、css语法

  • css规则主要有两部分组成:选择器和一条或多条属性声明
  • css声明总以分号(;)结束,声明总以大括号({})括起来
  • css注释是用来解释你的代码,并且可以随意编辑它,浏览器会忽略它。

CSS注释以 / 开始, 以 / 结束

三、css选择器

1.复合选择器在这里插入图片描述
2.id选择器

<p id="para1">Hello World!</p>
<p>这个段落不受该样式的影响。</p>

ID属性不要以数字开头,数字开头的ID在浏览器中不起作用。

3.class选择器
3.class选择器

class 选择器用于描述一组元素的样式,class 选择器有别于id选择器,class可以在多个元素中使用。

class 选择器在HTML中以class属性表示, 在 CSS 中,类选择器以一个点"."号显示:

<h1 class="center">这个标题不受影响</h1>
<p class="center">这个段落居中对齐。</p> 
  • 类名的第一个字符不能使用数字

四、css创建

1.外部样式表

当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 标签链接到样式表。

  • 不要在属性值与单位之间留有空格(如:"margin-left: 20 px" ),正确的写法是 "margin-left: 20px" 。

2.内部样式表

当单个文档需要特殊的样式时,就应该使用内部样式表。你可以使用

<head>
<style>
hr {color:sienna;}
p {margin-left:20px;}
body {background-image:url("images/back40.gif");}
</style>
</head`

3.内联样式

要使用内联样式,你需要在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性。

<p style="color:sienna;margin-left:20px">这是一个段落。</p>

五、css关于网页的修饰

  • 背景

1.背景颜色

        background-color 属性定义了元素的背景颜色.
      页面的背景颜色使用在body的选择器中:
body {background-color:#b0c4de;}

CSS中,颜色值通常以以下方式定义:

  • 十六进制 - 如:"#ff0000"
  • RGB - 如:"rgb(255,0,0)"
  • 颜色名称 - 如:"red"

2.背景图像

 background-image 属性描述了元素的背景图像.

 默认情况下,背景图像进行平铺重复显示,以覆盖整个元素实体.

CSS 背景属性

background                      简写属性,作用是将背景属性设置在一个声明中。
background-attachment       背景图像是否固定或者随着页面的其余部分滚动。
background-color             设置元素的背景颜色。
background-image          把图像设置为背景。
background-position      设置背景图像的起始位置。
background-repeat          设置背景图像是否及如何重复。
  • 文本格式

1.文本颜色

颜色属性被用来设置文字的颜色

2.文本的对齐方式

 文本排列属性是用来设置文本的水平对齐方式。

 文本可居中或对齐到左或右,两端对齐.

当text-align设置为"justify",每一行被展开为宽度相等,左,右外边距是对齐(如杂志和   报纸)
h1 {text-align:center;}
p.date {text-align:right;}
p.main {text-align:justify;}

3.文本修饰

         text-decoration 属性用来设置或删除文本的装饰。
从设计的角度看 text-decoration属性主要是用来删除链接的下划线:
a {text-decoration:none;}

4.文本缩进

文本缩进属性是用来指定文本的第一行的缩进。

文本属性

color                设置文本颜色
direction              设置文本方向。
letter-spacing        设置字符间距
line-height            设置行高
text-align           对齐元素中的文本
text-decoration      向文本添加修饰
text-indent         缩进元素中文本的首行
text-shadow         设置文本阴影
text-transform        控制元素中的字母
unicode-bidi        设置或返回文本是否被重写 
vertical-align        设置元素的垂直对齐
white-space            设置元素中空白的处理方式
word-spacing        设置字间距
  • 字体

1.字型

    在CSS中,有两种类型的字体系列名称:
通用字体系列 - 拥有相似外观的字体系统组合
特定字体系列 - 一个特定的字体系列

2.字体系列

font-family 属性设置文本的字体系列。
font-family 属性应该设置几个字体名称作为一种"后备"机制,如果浏览器不支持第一种字体,他将尝试下一种字体。

注意: 如果字体系列的名称超过一个字,它必须用引号,如Font Family:"宋体"。
多个字体系列是用一个逗号分隔指明:

p{font-family:"Times New Roman", Times, serif;}

3.字体样式

主要是用于指定斜体文字的字体样式属性。

这个属性有三个值:
                 正常 - 正常显示文本
                  斜体 - 以斜体字显示的文字
                 倾斜的文字 - 文字向一边倾斜(和斜体非常类似,但不太支持)

4.字体大小

  font-size 属性设置文本的大小。

 能否管理文字的大小,在网页设计中是非常重要的。

所有CSS字体属性

 font            在一个声明中设置所有的字体属性
font-family       指定文本的字体系列
font-size         指定文本的字体大小
font-style         指定文本的字体样式
font-variant      以小型大写字体或者正常字体显示文本。
font-weight          指定字体的粗细。
  • 链接

链接的样式,可以用任何CSS属性(如颜色,字体,背景等)。
特别的链接,可以有不同的样式,这取决于他们是什么状态。

这四个链接状态是:

  a:link - 正常,未访问过的链接
  a:visited - 用户已访问过的链接
  a:hover - 当用户鼠标放在链接上时
  a:active - 链接被点击的那一刻

注意:

当设置为若干链路状态的样式,也有一些顺序规则:
a:hover 必须跟在 a:link 和 a:visited后面
a:active 必须跟在 a:hover后面

  • 列表

所有的CSS列表属性

list-style           简写属性。用于把所有用于列表的属性设置于一个声明中
list-style-image    将图像设置为列表项标志。
list-style-position    设置列表中列表项标志的位置。
list-style-type         设置列表项标志的类型。
  • 表格

1.表格边框

指定CSS表格边框,使用border属性。

下面的例子指定了一个表格的Th和TD元素的黑色边框:

2.折叠边框

border-collapse 属性设置表格的边框是否被折叠成一个单一的边框或隔开:

3.表格文字对齐

 表格中的文本对齐和垂直对齐属性。

   text-align属性设置水平对齐方式,向左,右,或中心:
  • 盒子模型

在这里插入图片描述
不同部分的说明:

Margin(外边距) - 清除边框外的区域,外边距是透明的。
Border(边框) - 围绕在内边距和内容外的边框。
Padding(内边距) - 清除内容周围的区域,内边距是透明的。
Content(内容) - 盒子的内容,显示文本和图像。
  • 边框

    border-style值
    
      none: 默认无边框
      dotted: 定义一个点线边框
      dashed: 定义一个虚线边框
      solid: 定义实线边框
      double: 定义两个边框。 两个边框的宽度和 border-width 的值相同
      groove: 定义3D沟槽边框。效果取决于边框的颜色值
      ridge: 定义3D脊边框。效果取决于边框的颜色值
      inset:定义一个3D的嵌入边框。效果取决于边框的颜色值
      outset: 定义一个3D突出边框。 效果取决于边框的颜色值
    

边框属性

border-left          简写属性,用于把左边框的所有属性设置到一个声明中。
border-left-color    设置元素的左边框的颜色。
border-left-style    设置元素的左边框的样式。
border-left-width    设置元素的左边框的宽度。
border-right           简写属性,用于把右边框的所有属性设置到一个声明中。
border-right-color    设置元素的右边框的颜色。
border-right-style    设置元素的右边框的样式。
border-right-width    设置元素的右边框的宽度。
border-top             简写属性,用于把上边框的所有属性设置到一个声明中。
border-top-color    设置元素的上边框的颜色。
border-top-style    设置元素的上边框的样式。
border-top-width    设置元素的上边框的宽度。


  • 轮廓(outline)

 轮廓(outline)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。

轮廓(outline)属性指定元素轮廓的样式、颜色和宽度。
  • margin(外边距)

在这里插入图片描述
边距属性

margin        简写属性。在一个声明中设置所有外边距属性。
margin-bottom    `设置元素的下外边距`。
margin-left    设置元素的左外边距。
margin-right    设置元素的右外边距。
margin-top    设置元素的上外边距。
  • padding(填充)

    CSS padding(填充)是一个简写属性,定义元素边框与元素内容之间的空间,即上下左右的内边距。

      padding    使用简写属性设置在一个声明中的所有填充属性
      padding-bottom    设置元素的底部填充
      padding-left    设置元素的左部填充
      padding-right    设置元素的右部填充
      padding-top    设置元素的顶部填充
    
  • 尺寸(Dimension)

尺寸属性

height      设置元素的高度。
line-height  设置行高。
max-height     设置元素的最大高度。
max-width   设置元素的最大宽度。
min-height      设置元素的最小高度。
min-width     设置元素的最小宽度。
width         设置元素的宽度。


  • Position(定位)

1.static定位

HTML 元素的默认值,即没有定位,遵循正常的文档流对象。
静态定位的元素不会受到 top, bottom, left, right影响。
div.static {
    position: static;
    border: 3px solid #73AD21;
}

2.fixed定位

元素的位置相对于浏览器窗口是固定位置。
即使窗口是滚动的它也不会移动:

p.pos_fixed
{
    position:fixed;
    top:30px;
    right:5px;
}

3.relative定位

相对定位元素的定位是相对其正常位置

h2.pos_left
{
    position:relative;
    left:-20px;
}
h2.pos_right
{
    position:relative;
    left:20px;
}

4.absolute定位

绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于:

5.sticky定位

sticky 英文字面意思是粘,粘贴,所以可以把它称之为粘性定位。
position: sticky; 基于用户的滚动位置来定位。

  • 布局-Overflow

overflow:visible

overflow 属性可以控制内容溢出元素框时在对应的元素区间内添加滚动条

visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。

  • Float(浮动)

1.为图像添加边框和边距并浮动到段落的右侧

<style>
img 
{
    float:right;
    border:1px dotted black;
    margin:0px 0px 15px 20px;
}
</style>

2.清除浮动-使用clear

元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。
 clear 属性指定元素两侧不能出现浮动元素。
使用 clear 属性往文本中添加图片廊




<ul>
  <li><a href="#home">主页</a></li>
  <li><a href="#news">新闻</a></li>
  <li><a href="#contact">联系</a></li>
  <li><a href="#about">关于</a></li>
</ul>

例子解析:

list-style-type:none - 移除列表前小标志。一个导航栏并不需要列表标记
移除浏览器的默认设置将边距和填充设置为0

2.垂直导航条

上面的代码,我们只需要 <a>元素的样式,建立一个垂直的导航栏:

display:block - 显示块元素的链接,让整体变为可点击链接区域(不只是文本),它允许我们指定宽度
width:60px - 块元素默认情况下是最大宽度。我们要指定一个60像素的宽度

3.创建链接并添加边框

可以在 <li> or <a> 上添加text-align:center 样式来让链接居中。

可以在 border<ul> 上添加 border 属性来让导航栏有边框。如果要在每个选项上添加边框,可以在每个 <li> 元素上添加border-bottom :

4.链接右对齐

将导航条最右边的选项设置右对齐 (float:right;):
  • 下拉菜单

HTML 部分:

 我们可以使用任何的 HTML 元素来打开下拉菜单,如:<span>, 或 a <button> 元素。

使用容器元素 (如: <div>) 来创建下拉菜单的内容,并放在任何你想放的位置上。

使用 <div> 元素来包裹这些元素,并使用 CSS 来设置下拉内容的样式。

CSS 部分:

.dropdown 类使用 position:relative, 这将设置下拉菜单的内容放置在下拉按钮 (使用 position:absolute) 的右下角位置。

.dropdown-content 类中是实际的下拉菜单。默认是隐藏的,在鼠标移动到指定元素后               会显示。 注意 min-width 的值设置为 160px。你可以随意修改它。 注意: 如果你想设置下拉内容与下拉按钮的宽度一致,可设置 width 为 100% ( overflow:auto 设置可以在小尺寸屏幕上滚动)。

 我们使用 box-shadow 属性让下拉菜单看起来像一个"卡片"。

 :hover 选择器用于在用户将鼠标移动到下拉按钮上时显示下拉菜单。
  • 元素显示模式

1.块元素

<h1>~<h6>  <p>  <div> <ul>  <ol>     <li>
  • 独占一行
  • 高度,宽度,外边距及内边距都可以控制
  • 宽度默认是容器的100%
  • 里面可以放行内或块级元素

注意:

<p>标签主要用于存放文字,<p>里不能放块级元素
<h1>--><h6>都是文字类块级标签

2.行内元素

<a>    <strong>  <b>   <em>

<i>  <del>  <s>   <ins>  <span>  <u>
  • 相邻行内元素在一行上,一行可以显示多个
  • 宽,高设置无效
  • 默认宽度是它本身内容的宽度
  • 行内元素只能容纳文本或其他行内元素

3.行内块元素

<img/>    <input/>   <td>
同时具有块元素和行内元素的特点
  • 和相邻行内元素在一行上,但它们之间有空隙,一行可以显示多个
元素模式总结

在这里插入图片描述

   6.元素模式之间转换
  • 转换为块元素:display:block;
  • 转换为行内元素:display:inline;
  • 转换为行内块元素:display:inline-block;

示例

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <style>
            a {
                width:150px;
                height:50px;
                background-color:blue;
                display:block;
            }
            div {
                width:300px;
                height:100px;
                background-color:purple;
            }
            span {
                width:334px;
                height:60px;
                background-color:purple;
            }
        </style>
    </head>
    <body>
        <a herf="#">阿姨</a>
        <a herf="#">阿姨</a>
        <div>叔叔</div>
        <div>叔叔</div>
        <span>行内元素转换为行内块元素</span>
        <span>行内元素转换为行内块元素</span>
    </body>
</html>
目录
相关文章
|
5月前
|
前端开发
CSS 自测题
CSS 自测题
22 0
|
XML 前端开发 JavaScript
一小时学会CSS (上)
一小时学会CSS (上)
|
前端开发
1小时学会CSS - 中
1小时学会CSS - 中
|
前端开发 容器
1小时学会CSS-下
1小时学会CSS-下
|
前端开发 JavaScript 容器
【青训营】CSS(三)
【青训营】CSS(三)
131 0
【青训营】CSS(三)
|
前端开发 JavaScript
【青训营】CSS(一)
【青训营】CSS(一)
156 0
【青训营】CSS(一)
|
前端开发 开发者 C++
【青训营】CSS(四)
【青训营】CSS(四)
116 0
【青训营】CSS(四)
|
前端开发 Windows
【青训营】CSS(二)
【青训营】CSS(二)
130 0
【青训营】CSS(二)
|
机器学习/深度学习 前端开发
摸鱼不如来了解一下--CSS3选择器
CSS3 新增选择器 类选择器、属性选择器、伪类选择器,权重都为10 (E[att]{ } 权重为1(E)+10=11 ;E:first-child{}权重为1(E)+10=11 );伪元素选择器权重与标签选择器相同为1(E::before权重为1(E)+1=2)
86 0
|
JSON 前端开发 数据格式