整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

css的img标签和清除浮动

img的title和alt有什么区别?

    <img src="./w_1.jpg" alt="表情包" title="写信" />
  • title:鼠标移动上去的提示

  • alt: 图片加载失败时,避免用户体验不好,给的提示,比如当图片不存在时,这样显示:



清除浮动的几种方式,各自的优缺点?

浮动:脱离文档流,父元素不计算它的高度,会导致塌陷,影响后边元素的布局。

        .wrap {
            border: 1px solid fuchsia;
        }
        .box {
            width: 200px;
            background: red;
            float: left;
        }
        <div class="wrap">
            <div class="box">
                我是爱美的姑娘,关注我,每天为您分享和复习前端开发的知识点以及常见的面试题、学习的同时还可以了解最新的娱乐八卦、幽默搞笑,学习更轻松哟
            </div>
        </div>

如下图,父元素本来有一个边框的,但是由于子元素浮动了,它不会计算浮动元素的高度,就塌陷了。如果我们再继续写元素,布局就乱了,这时候就需要把这一块隔离开。不影响外边的元素,同时外边的元素也不能影响它,这时候就可以清除浮动来解决:


清除浮动的几种方式:

  1. 使用BFC,BFC计算高度的高度时候,浮动元素也参与计算,激活BFC的方式:
  • float的值不是none。
  • position的值不是static或者relative。
  • display的值是inline-block、table-cell、flex、table-caption或者inline-flex
  • overflow的值不是visible

BFC的特点:

  • 内部的box会在垂直方向,一个接一个地放置
  • 同一个BFC的两个相邻box的margin会发生重叠(body也是一个BFC)
  • 每个盒子(块盒与行盒)的margin box的左边,与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
  • BFC的区域不会与float box重叠。
  • BFC是页面上的一个独立容器,容器里面的子元素不会影响到外面的元素。反之亦然。
  • 计算BFC的高度时,浮动元素也参与计算(可用来清除浮动)。

给父元素设置:

<style>      
        .wrap {
            border: 1px solid fuchsia;
            overflow: hidden;
        }
        .box {
            width: 100px;
            background: red;
            float: left;
        }
    </style>
    <body>
        <div class="wrap">
            <div class="box">
                我是爱美的姑娘,关注我,每天为您分享和复习前端开发的知识点以及常见的面试题、学习的同时还可以了解最新的娱乐八卦、幽默搞笑,学习更轻松哟
            </div>
        </div>
    </body>


缺点: IE6 中还需要触发 hasLayout ,例如为父元素设置容器宽高或设置 zoom:1。


  1. 使用空元素,在后面清除浮动
    <style>
        .wrap {
            border: 1px solid fuchsia;
            overflow: hidden;
        }
        .box {
            width: 100px;
            background: red;
            float: left;
        }
        .clear {
            clear: both;
        }
        .box_2 {
            width: 100px;
            height: 100px;
            background: darkblue;
        }
    </style>
    <body>
        <div class="wrap">
            <div class="box">
                我是爱美的姑娘,关注我,每天为您分享和复习前端开发的知识点以及常见的面试题、学习的同时还可以了解最新的娱乐八卦、幽默搞笑,学习更轻松哟
            </div>
        </div>
        <div class="clear"></div>
        <div class="box_2"></div>
    </body>

如下图:



缺点:会新增多余的空标签,后期维护麻烦


  1. 使用CSS的:after伪元素
    <style>
        .wrap {
            border: 1px solid fuchsia;
        }
        .box {
            width: 100px;
            background: red;
            float: left;
        }
        .wrap::after {
            content: '';
            display: block;
            clear: both;
        }
        .box_2 {
            width: 100px;
            height: 100px;
            background: darkblue;
        }
    </style>
    <body>
        <div class="wrap">
            <div class="box">
                我是爱美的姑娘,关注我,每天为您分享和复习前端开发的知识点以及常见的面试题、学习的同时还可以了解最新的娱乐八卦、幽默搞笑,学习更轻松哟
            </div>
        </div>
        <div class="box_2"></div>
    </body>

如下图:


缺点:用zoom:1触发hasLayout.


我是爱美的姑娘,关注我,每天为您分享和复习前端开发的知识点以及常见的面试题、学习的同时还可以了解最新的娱乐八卦、幽默搞笑,学习更轻松哟

使用 <summary> 元素:

<details>

<summary>Copyright 1999-2011.</summary>

<p> - by Refsnes Data. All Rights Reserved.</p>

<p>All content and graphics on this web site are the property of the company Refsnes Data.</p>

</details>


浏览器支持

目前,只有 Chrome 和 Safari 6 支持 <summary> 标签。


标签定义及使用说明

<summary> 标签为 <details> 元素定义一个可见的标题。 当用户点击标题时会显示出详细信息。


HTML 4.01 与 HTML5之间的差异

<summary> 标签是 HTML5 中的新标签。


提示和注释

注释:<summary> 元素应该是 <details> 元素的第一个子元素。


全局属性

<summary> 标签支持 HTML 的全局属性。


事件属性

<summary> 标签支持 HTML 的事件属性。

如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!

使用 <span> 元素对文本中的一部分进行着色:

<p>我的母亲有 <span style="color:blue">蓝色</span> 的眼睛。</p>


浏览器支持

所有主流浏览器都支持 <span> 标签。


标签定义及使用说明

<span> 用于对文档中的行内元素进行组合。

<span> 标签没有固定的格式表现。当对它应用样式时,它才会产生视觉上的变化。如果不对 <span> 应用样式,那么 <span> 元素中的文本与其他文本不会任何视觉上的差异。

<span> 标签提供了一种将文本的一部分或者文档的一部分独立出来的方式。


提示和注释

提示:被 <span> 元素包含的文本,您可以使用 CSS 对它定义样式,或者使用 JavaScript 对它进行操作。


HTML 4.01 与 HTML5之间的差异

NONE.


全局属性

<span> 标签支持 HTML 的全局属性。


事件属性

<span> 标签支持 HTML 的事件属性。

如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!