CSS拾遗

重新看《精通CSS(第二版)》做一些记录,方便今后巩固。

1.外边距叠加

  只有普通文档流中块框的垂直外边距才会发生外边距叠加。行内框、浮动框、或绝对定位框之间的外边距不会叠加。

2.相对定位

  使用相对定位时,无论是否移动,元素仍然占据原来的空间,其他元素也是对它原来空间的元素进行定位。

  下面是未相对定位

    <style>
        .rela1 {
            height: 50px;
            width: 50px;
            background-color: red;
            margin: 50px;
        }
        .rela2 {
            /*position: relative;
            top: 50px;
            left: 200px;*/
            height: 50px;
            width: 50px;
            background-color: blue;
            margin: 50px;
        }
        .rela3 {
            height: 50px;
            width: 50px;
            background-color: green;
            margin: 50px;
        }
    </style>
</head>
<body>
    <div class="rela1"></div>
    <div class="rela2"></div>
    <div class="rela3"></div>
</body>

  下面对蓝色块进行相对定位

<style>
        .rela1 {
            height: 50px;
            width: 50px;
            background-color: red;
            margin: 50px;
        }
        .rela2 {
            position: relative;
            top: 50px;
            left: 200px;
            height: 50px;
            width: 50px;
            background-color: blue;
            margin: 50px;
        }
        .rela3 {
            height: 50px;
            width: 50px;
            background-color: green;
            margin: 50px;
        }
    </style>
</head>
<body>
    <div class="rela1"></div>
    <div class="rela2"></div>
    <div class="rela3"></div>
</body>

  可以发现蓝色块相对定位,对下面的绿色块的定位没有任何影响。绝对定位则不同,绝对定位使元素的位置与文档流无关,不占据空间,普通文档流中其他元素

的布局就像绝对定位的元素不存在时一样。绝对定位元素是相对于距离它最近的那个已定位的祖先元素来定位的。

3.层叠样式如何考虑特殊性、顺序与重要性

  先考虑特殊性,就是1,1,1,1算数那个。若特殊性还不足以判断在相互冲突的规则中应该优先应用哪一个,在这种情况下,规则的顺序就可以起到决定作用:晚出现的优先级高。

如果这还不够,可以声明一条特殊的规则覆盖整个系统中的规则,这条规则的重要程度要比其他所有规则高。也可以在某条声明的末尾加上 !important。

4.浮动元素及行框与清理

  浮动元素让元素脱离文档流,不再影响不浮动的元素,实际上并非完全如此。如果浮动的元素后面有一个文档流中的元素,那么这个元素的框会表现得像

浮动元素根本不存在一样。但是,该元素的文本内容会受到浮动元素的影响,会移动以留出空间。

  下面是红色框未浮动时的布局

<style>
        .rela1 {
            /*float: left;*/
            height: 30px;
            width: 30px;
            background-color: red;

        }
        .rela2 {
            height: 100px;
            width: 100px;
            background-color: blue;
        }

    </style>
</head>
<body>
    <div class="rela1"></div>
    <div class="rela2">
        123
    </div>

</body>

  下面是红色框浮动时布局

<style>
        .rela1 {
            float: left;
            height: 30px;
            width: 30px;
            background-color: red;

        }
        .rela2 {
            height: 100px;
            width: 100px;
            background-color: blue;
        }

    </style>
</head>
<body>
    <div class="rela1"></div>
    <div class="rela2">
        123
    </div>

</body>

  要想阻止蓝色框文本围绕在浮动框的外边,可以对其使用clear属性进行清理。

<style>
        .rela1 {
            float: left;
            height: 30px;
            width: 30px;
            background-color: red;

        }
        .rela2 {
            clear: both;
            height: 100px;
            width: 100px;
            background-color: blue;
        }

    </style>
</head>
<body>
    <div class="rela1"></div>
    <div class="rela2">
        123
    </div>

</body>

时间: 2024-12-23 01:19:13

CSS拾遗的相关文章

CSS拾遗+技巧

1.实现尖角符号. 这是内联inline-block标签独有的特性. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> .a{ border-top:30px solid #000000 ; border-bottom: 30px solid #2c7

python之路之css拾遗

做一个鼠标碰到就会自动加边框的效果 下边的代码,主要是使自动加边框的时候,加边框的部分不会跳动 实现一张图片的点击之后出现信息 原文地址:https://www.cnblogs.com/minmin123/p/8824844.html

老男孩Python高级全栈开发工程师【真正的全套完整无加密】

课程大纲 老男孩python全栈,Python 全栈,Python教程,Django教程,Python爬虫, scrapy教程,python高级全栈开发工程师,本套教程,4部分完整无缺,课程完结,官方售价6800元. 课程全部都是不加密,全部都有声音-不是网上那种几块钱十几块钱那种加密没有声音或者课程不全,贪便宜花冤枉钱不说都会严重影响学习,耽误大量时间! 本套全栈课程,不说完全媲美线下教学,只要你肯坚持,不会比面授差太多-坚持学完找一份python开发类的工作完全没问题,另外对于学习方面的投资

CSS user-select属性拾遗

昨天把Notebook整理了一下,去查了一下手册,原来之前比较忽略user-select这个属性,因为之前以为只有webkit才支持的.手册进行了补充: user-select 禁止用户选中文字 none:文本不能被选择 text:可以选择文本 all:当所有内容作为一个整体时可以被选择.如果双击或者在上下文上点击子元素,那么被选择的部分将是以该子元素向上回溯的最高祖先元素. element:可以选择文本,但选择范围受元素边界的约束(webkit暂未支持) 兼容的处理: IE6-9不支持该属性,

CSS躬行记(1)——CSS基础拾遗

一.box-decoration-break CSS3新增的box-decoration-break属性可指定行内非替换元素在跨行.跨列或跨页时的样式渲染,它包含两个值: (1)slice:默认值,盒子会被分割成多部分. (2)clone:断开的各个盒子会单独渲染. 下面用一个示例来演示两种的区别,第一个span元素采用box-decoration-break的默认值,效果如第一张图所示,在断行处没有左右内边距和圆角:第二个span元素box-decoration-break的值为clone,效

[php入门] 5、初学CSS从中记下的一些基础点(For小白)

CSS是层叠式样式表,主要用来控制页面的样式. 一.CSS概述 应用CSS: 1.外部样式表,CSS写在一个单独的.CSS文件中,在head里加<link rel="stylesheet" tpye="text/css" href="路径及名称"> 2.内部样式表,写在html的head的style标签中 3.内联样式表,直接写具体标签上,<h1 style="color #FFF">ddd</h

PHP入门初学css

一.CSS概述 应用CSS: 1.外部样式表,CSS写在一个单独的.CSS文件中,在head里加<link rel="stylesheet" tpye="text/css" href="路径及名称"> 2.内部样式表,写在html的head的style标签中 3.内联样式表,直接写具体标签上,<h1 style="color #FFF">ddd</h1> CSS语法: 选择器{ 属性1:值1

day 38 css

CSS CSS是Cascading Style Sheets的简称,中文称为层叠样式表,用来控制网页数据的表现,可以使网页的表现与数据内容分离. 一 css的四种 一 css的四种引入方式 1.行内式          行内式是在标记的style属性中设定CSS样式.这种方式没有体现出CSS的优势,不推荐使用. <p style="background-color: rebeccapurple">hello yuan</p> 2.嵌入式          嵌入式

CSS补充

三 CSS的常用属性 1  颜色属性 <div style="color:blueviolet">ppppp</div> <div style="color:#ffee33">ppppp</div> <div style="color:rgb(255,0,0)">ppppp</div> <div style="color:rgba(255,0,0,0.5)&q