zoukankan      html  css  js  c++  java
  • CSS入门(定位之浮动定位、伪类之鼠标悬停、光标修改和透明度修改和列表样式)

    一、定位


    所为定位,实际上就是定义元素框相对于其正常位置,应该出现在哪儿
    定位就是改变元素在页面上的默认位置

    分类:

    普通流定位(元素默认的定位方式)
    浮动定位
    相对定位
    绝对定位
    固定定位

    1、普通流定位

    文档流是页面元素默认的定位方式
    块级:从上到下排列(独占一行)
    行级:从左到右排列(不独占一行)

    2.浮动定位

    如果将元素的定位方式设置了浮动定位那么具有以下几个特点

    1.浮动元素会脱离文档流,其他未浮动的元素要上前补位
    2.浮动元素会停靠在父元素的左边或者右边,或者停靠在其他浮动元素的边缘上
    3.浮动元素只会在当前行内浮动
    4.浮动元素依然位于父级元素内
    5.让多个块级元素处于一行

    float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。

    如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄。

    注释:假如在一行之上只有极少的空间可供浮动元素,那么这个元素会跳至下一行,这个过程会持续到某一行拥有足够的空间为止。

    元素的水平方向浮动,意味着元素只能左右移动而不能上下移动。

    一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。

    浮动元素之后的元素将围绕它。

    浮动元素之前的元素将不会受到影响。

    如果图像是右浮动,下面的文本流将环绕在它左边:

    浮动引发的效果:

    1.当父元素的宽度显示不下所有已浮动的元素时,最后一个元素将换行(有可能会被卡住)
    2.元素一旦浮动起来,那么将变成块级元素,尤其对行内元素影响最大。
    3.文本、行内元素、行内块元素 采用文字环绕的方式排列,是不会被浮动元素压在底下的会巧妙的避开浮动元素

    3.清除浮动

    元素浮动起来之后,除了影响到自己的位置,还会影响后续元素
    如果不想被前面浮动元素影响 可以使用清除浮动来解决这个问题
    谁被影响 就在谁身上用
    关键字 : clear(clear属性指定段落的左侧或右侧不允许浮动的元素) :

    left 清除左浮动
    right 清除右浮动
    both 不管是左右都清除
    浮动元素对父级元素带来的影响


    4.如果父级的高度设置100% 或者 没有设置(自适应) 当元素全部浮动起来之后 父级的高度为0时如何去解决:

    1.直接给父级设置高度px
    弊端:必须要知道父级准确的高度
    2.设置父元素浮动
    弊端:对后续元素又影响
    3.为父级元素设置overflow(溢出)
    弊端:如果子级内容有溢出显示的话会被一同隐藏
    4.在父元素中追加一个空元素 设置清除浮动

    二、CSS的伪类

    :hover 选择器用于选择鼠标指针浮动在上面的元素。

     

    提示::hover 选择器可用于所有元素,不只是链接。

     

    提示::link选择器设置指向未被访问页面的链接的样式,:visited选择器用于设置指向已被访问的页面的链接,:active选择器用于活动链接。

     

    注释:在 CSS 定义中,:hover 必须位于 :link 和 :visited 之后(如果存在的话),这样样式才能生效。

    三、光标修改、透明度修改和列表样式

    1.cursor 属性规定要显示的光标的类型(形状)。

      属性值:

    url    需使用的自定义光标的 URL。注释:请在此列表的末端始终定义一种普通的光标,以防没有由 URL 定义的可用光标。

    default  默认光标(通常是一个箭头)

    auto   默认。浏览器设置的光标。

    crosshair 光标呈现为十字线。

    pointer  光标呈现为指示链接的指针(一只手)

    move   此光标指示某对象可被移动。

    text    此光标指示文本。

    wait    此光标指示程序正忙(通常是一只表或沙漏)

    help    此光标指示可用的帮助(通常是一个问号或一个气球)。

    2.Opacity属性设置一个元素了透明度级别。

    属性值:指定不透明度。从0.0(完全透明)到1.0(完全不透明)

    3.list-style 简写属性在一个声明中设置所有的列表属性。

    可以设置的属性(按顺序): list-style-type, list-style-position, list-style-image.

    可以不设置其中的某个值,比如 "list-style:circle inside;" 也是允许的。未设置的属性会使用其默认值

    一般只设置第一个值,目前也只学了第一个值:list-style-type

    属性值:

    none          无标记

    disc            默认。标记是实心圆。

    circle          标记是空心圆。

    square         标记是实心方块。

    decimal         标记是数字。

    decimal-leading-zero  0开头的数字标记。(01, 02, 03, 等。)

    lower-roman      小写罗马数字(i, ii, iii, iv, v, 等。)

    upper-roman      大写罗马数字(I, II, III, IV, V, 等。)

    ......

  • 相关阅读:
    石墨文档地址
    Emacs
    HDU
    田忌赛马(贪心
    poj 3040 Allowance (贪心
    cr545
    雕塑 ( 离散化,bfs-floodfill
    求m个不相交子段的和(复杂dp
    doing home work(dp-二进制法枚举
    非常可乐(多参数bfs模拟
  • 原文地址:https://www.cnblogs.com/MDZZZ/p/12032679.html
Copyright © 2011-2022 走看看