CSS总结

1.字体

  • font-family:一组有共同特征的字体
    • 指定候选字体
  • text-decoration 可设置下划线等

2.盒模型

image

  • margin

  • line-height 可增加文本行之间的间距

  • background-image:设置背景图像

  • background-repeat:设置平铺方式

  • background-postion: 设置位置


  • id
    • 一个元素只能有一个id,但可属多个类
    • class属性可以成组指定样式

3.块元素(block)&内联元素(inline)

块元素

  • 常见块元素:div、p、address、blockquote、center、ul 、li、table、form、header、section、footer、h1 , h2 , h3 , h4 , h5 , h6
    • text-align属性:用来将块元素中的所有元素对齐。可有所有嵌套的块元素继承

内联元素

+常见内联元素:a、font(em strong i)、img、span
+ <span>:与div类似,用于将相关内联元素和文本归组到一起
+ 元素可有不同的状态如<a> 可用伪类为各个状态指定样式
+ 伪类:link、visited、hover(悬停) 、active(活动的链接)

可变元素

  • (根据上下文关系确定该元素是块元素还是内联元素):如 button

二者不同之处

  • 块级元素 特点

    • 总是在新行上开始,占据一整行;
    • 高度,行高以及外边距和内边距都可控制;
    • 宽带始终是与浏览器宽度一样,与内容无关;
    • 它可以容纳内联元素和其他块元素。
    • 块元素默认没高度,有内容才会有高度。
  • 内联元素 特点

    • 和其他元素都在一行上;
    • 默认没高度和宽度,有内容才会有。
    • 其宽度随着内容增加 ,高度随字体大小而改变
    • 内联元素虽然不能设置宽高,但是设置成绝对定位(absolute)后,可以设置宽高。(内联元素的margin-left / margin-right及padding-left / padding-rigtht是可以控制的,所以可以通过这4个属性来控制内联元素的宽度。)
    • 行内元素只能容纳文本或者其他行内元素。

利用display属性

  • display:block – 显示为块级元素
  • display:inline – 显示为内联元素
  • dipslay:inline-block – 显示为内联块元素,表现为同行显示并可修改宽高内外边距等属性

4.布局与定位

image

3种布局

  • 流体布局:内容自适应扩展的浏览器窗口
  • 冻结布局:内容宽度固定
  • 凝胶布局:宽度固定,外边距会随窗口扩展或收缩

4种定位(position属性)

  • 静态定位(static) :默认定位,元素正常流入
  • 绝对定位(absolute):允许指定绝对位置,默认相对页面页面边界放置
    • 可以用z-index属性分层放置,使一个属性放置在另一个属性上面。z-index值越大,层次越高
  • 相对定位(relative):相对其外围包含元素来定位,元素仍在正常的页面流中,再按指定的量偏移元素
  • 固定定位(fixed):相对浏览器窗口定位,不会随页面滚动
  • 补充
    1. 绝对、固定、相对定位,可用属性top、right、bottom、left指定元素位置
    2. 浮动元素(float属性)放在块元素之上,不会影响页面流;内联内容会考虑浮动元素的边界,围绕这个浮动元素
    3. 浮动元素必须要有特定的宽度,不能设置为auto

5.伪元素::after

  • 清除浮动
::after {
    content: "";
    display: block;
    clear: both;
    }

6.flex布局(弹性布局)

设置

  • display: flex;
  • 将对象作为弹性伸缩盒展示,用于块级元素
    display: inline-flex; 将对象作为弹性伸缩盒展示,用于行内元素
  • 设为 Flex 布局以后,子元素的float、clear和vertical-align属性将失效
  • webkit内核需要加前缀:-webkit

属性

flex-direction

  • 决定主轴的方向,即弹性项目排列方向
    • row(默认值):主轴为水平方向,起点左端
    • row-reverse:水平方向反转
    • column:主轴为垂直方向,起点上沿
    • column-reverse:垂直方向反转

justify-content

  • 主轴上的对齐方式
    • flex-start:左对齐(默认)
    • flex-end :右对齐
    • center :居中
    • space-between:两端对齐,两个弹性项目之间间隔相等
    • space-around :平均分布在该行上,两边留有一半的间隔空间

align-items

  • 弹性项目在纵轴上如何对齐
    • stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度
    • flex-start:交叉轴(侧轴)(弹性盒容器)的起始位置对齐
    • flex-end:交叉轴的终点对齐
    • center:交叉轴的中点对齐
    • baseline: 项目的第一行文字的基线对齐

flex-wrap

  • 需要换行时设置
    • nowrap:默认不换行
    • wrap :换行,第一行在上方
    • wrap-reverse:换行,第一行在下方

align-content

  • 设置多行对齐
    • stretch:(默认)各行将会伸展以占用剩余的空间
    • flex-start:与交叉轴(侧轴)(弹性盒容器)的起始位置对齐。
    • flex-end:与交叉轴(侧轴)(弹性盒容器)的终点对齐。
    • center:与交叉轴(侧轴)(弹性盒容器)的中点对齐。
    • space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。
    • space-around: 各行在弹性盒容器中平均分布,两边留有一半的间隔空间

flex-flow

  • flex-direction属性和flex-wrap属性的简写,默认值为row nowrap

弹性子元素属性

order

  • 定义弹性项目排列顺序
    • 数值越小,排列越靠前
    • 默认0
    • 值为 integer

flex-grow

  • 定义项目的放大比例
    • 默认为0,不放大

flex-shrink

  • 定义了项目的缩小比例
    • 默认为1,会自动缩小

align-self

  • 用于设置弹性元素自身在侧轴(纵轴)方向上的对齐方式,可覆盖align-items属性。默认值为auto,表示继承父元素的align-items属性,如果没有父元素,则等同于stretch
    • 值与align-items一样

7.关于CSS3的一些内容

属性

  • opacity:透明度
  • transform:
  • cursor: pointer
  • transition (转换效果)
    • transition-property:要过渡的css属性名称(比如background-color、text-shadow或者all使用all则过渡会被应用到每个可能的css属性上)
    • transition-duration:定义过渡效果持续的时间(单位为秒如,.3s、.2s或者1.5s)
    • transition-timing-function:定义过渡期间速度如何变化(如ease、linear、ease-in、ease-out、ease-in-out或者cubic-bezier)
    • transition-delay:可选,用于定义过渡开始前的延迟时间。相反,将该值设置为一个负数,可以让过渡效果立即开始,但过度路程则会从半路开始 + 缩写:transition: all 1.5s ease
  • scale() :缩放
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值