Solid

详解为什么设置overflow为hidden可以清除浮动带来的影响

匆匆过客 提交于 2020-05-08 05:48:43
1.问题起源 在平时的业务开发写CSS中,为了满足页面布局,元素的浮动特性我们用的不能再多了。使用浮动的确能够解决一些布局问题,但是也带了一些副作用影响,比如,父元素高度塌陷,我们有好几种可以清除浮动的方法,最常用的就是设置父元素的overflow:hidden这个属性,每次在写代码的时候总是这样写,但是,自己从没深度思考过这些写为什么能够清除浮动,最近,自己也查阅了一些资料,谈谈自己的理解。 2.情景再现 先上代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>清除浮动</title> <style> .container{ border: 1px solid # 000 ;    background: #0f0; } .child{ float : left; } </style> </head> <body> <div class="container"> <div class="child"> 你好 </div> </div> </body> </html> 代码很简单,就是父元素container里面包含了一个子div元素child,然后我们使子元素的div向左浮动,结果来看,父元素只显示了四个方向边框的高度,背景颜色未显示,这是因为子元素浮动脱离文档流造成父元素高度塌陷。

为什么设置overflow为hidden可以清除浮动带来的影响

隐身守侯 提交于 2020-05-08 04:48:59
1.问题起源     在平时的业务开发写CSS中,为了满足页面布局,元素的浮动特性我们用的不能再多了。使用浮动的确能够解决一些布局问题,但是也带了一些副作用影响,比如,父元素高度塌陷,我们有好几种可以清除浮动的方法,最常用的就是设置父元素的overflow:hidden这个属性,每次在写代码的时候总是这样写,但是,自己从没深度思考过这些写为什么能够清除浮动,最近,自己也查阅了一些资料,谈谈自己的理解。 2.情景再现 先上代码: <! DOCTYPE html > < html lang ="en" > < head > < meta charset ="UTF-8" > < title > 清除浮动 </ title > < style > .container { border : 1px solid #000 ;    background : #0f0 ; } .child { float : left ; } </ style > </ head > < body > < div class ="container" > < div class ="child" > Lorem ipsum dolor sit amet, consectetur adipisicing elit. Alias aperiam dolorem eligendi laudantium

vue中excel导入导出组件

北城余情 提交于 2020-05-08 04:45:51
vue中导入导出excel,并根据后台返回类型进行判断,导入到数据库中 功能:实现js导入导出excel,并且对导入的excel进行展示,当excel标题名称和数据库的名称标题匹配时,则对应列导入的数据自动渲染展示在表格中,预览展示10条,不足10条的的用空行表示。可通过下拉框动态切换对应列的值。图片保存到系统中是将有src属性的img值替换为后台传递过来的七牛云地址,导入完成后,部分导入失败的数据可以下载到本地查看 导入的excel文件 使用该导入功能需安装依赖 npm install xlsx 需要使用导入导出功能的自行复制对应方法进行使用 exportData是用于导入的 tableToExcel 和 exportPathMethod是用于导出的 <template> <div class="excel" > <el- dialog :visible.sync ="centerDialogVisible" :title ="titleName" :close -on-click-modal="false" :before -close="beforePausClose" width ="1040px" > <div style="min-height: 550px;padding: 0 20px"> <div class="excel-header"> <el-select

什么是BFC(块级格式上下文)?

浪子不回头ぞ 提交于 2020-05-08 04:26:53
㈠什么是BFC? BFC 全称为 块格式化上下文 (Block Formatting Context) 。 定义:浮动元素和绝对定位元素,非块级盒子的块级容器(例如 inline-blocks, table-cells, 和 table-captions),以及overflow值不为“visiable”的块级盒子,都会为他们的内容创建新的BFC(块级格式上下文)。 ㈡BFC的布局规则是什么? 1)内部的box会在垂直方向,一个接一个地放置(可以看作BFC中有一个的常规流)。 2)Box垂直方向的距离有margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠 3)每个元素的margin box 的左边,会包含块border box的左边相接触(对于从左往右的格式化,否则相反),即使存在浮动也是如此 4)BFC的区域不会与float box 重叠 5)BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此 6)计算BFC的高度时,浮动元素也参与计算 ㈢那些情况会产生新的BFC/如何创建BFC? ⑴根元素或其它包含它的元素 ⑵浮动 (元素的 float 不为 none) ⑶绝对定位元素 (元素的 position 为 absolute 或 fixed) ⑷行内块 inline-blocks (元素的 display: inline

使用CSS为图片添加更多趣味的5种方法

和自甴很熟 提交于 2020-05-08 04:18:37
使用Photoshop为每个图片添加某种样式虽然可行,但会是相当乏味且困难的长久工作。下面要介绍的CSS技巧将帮助你从痛苦中解脱出来! 阴影效果 通过使用带有一些padding之的背景图来添加阴影效果。 HTML <img class=”shadow” src=”sample.jpg” alt=”” /> CSS img.shadow { background: url(shadow-1000×1000.gif) no-repeat right bottom; padding: 5px 10px 10px 5px; } 双边框效果 这应该是目前最常见的技巧,我们通过以下方式创建说边框。 HTML < img class = "double-border" src = "sample.jpg" alt = "" / > CSS img . double - border { border : 5px solid # ddd ; padding : 5px ; /*Inner border size*/ background : # fff ; /*Inner border color*/ } 图片外框效果 webdesignerwall.com 上有最好的讲解,这个效果是基于在上面层叠一个有透明度的图片的技术。至于IE6的PNG透明度问题,可以参考这篇教程。 HTML < div

【CSS学习】--- float浮动属性

ε祈祈猫儿з 提交于 2020-05-08 04:17:45
一、前言   浮动元素以 脱离标准流 的方式来实现元素的向左或向右浮动,并且浮动元素 还是在原来的行上进行浮动的 。float浮动属性的四个参数:left:元素向左浮动;right:元素向右浮动;none:默认值,元素不浮动;inherit:继承父元素的float属性值。 举两个栗子 父元素是否注意到自己有个浮动的子div呢? < div style ="width: 400px; height: auto; border: 2px solid black;" > < div style ="width: 50px; height: 100px; background-color: green; float: right;" ></ div > 我才不知道有没有浮动框,我只显示文字的高度 </ div > 从中我们可以发现,处于标准流中的父div并不知道浮动元素的存在,而浮动元素却知道它父元素的边界,它一直向右浮动直到撞到了父框的右边界为止。 < div style ="width: 240px; height: auto; border: solid 1px black;" > < div style ="width: 80px; height: 80px; background-color: red;" > 框一 </ div > < div style ="width:

小程序自定义组件 -- 弹窗

我只是一个虾纸丫 提交于 2020-05-08 03:20:45
为什么需要自定义组件?因为小程序通过组件来传值,但小程序没有提供很多传值的方法,所以需要写自定义组件。调用自定义组件 - 传值给组件 - 组件传值出来,开发者需要在组件中写属性及方法等。 原博文章: https://www.jianshu.com/p/8a2a730d9e60 现在来实现弹幕功能 如下: 1. 首先需要单独创建一个组件目录,在目录中新建一个AuglyVideo文件夹,用来存放弹窗组件,结构如下: 2. 组件初始化准备完成。开始写组件相关的配置。我们需要现在自定义组件声明 component 字段为 true //AuglyVideo.json {   "component": true, // 自定义组件声明   "usingComponents": {} // 可选项,用于引用别的组件 } 接下来组件的页面结构: //AuglyVideo.wxml <view class='wx_dialog_container' hidden="{{!isShow}}">   <view class='wx-mask'></view>   <view class='wx-dialog'>     <view class='wx-dialog-title'>{{ title }}</view>     <view class='wx-dialog-content'>{{

BFC(块级格式化上下文)的作用及生产方法

不羁的心 提交于 2020-05-08 02:31:33
  由于如浮动、margin值叠加等时候会用到BFC,但让我详细说BFC到底是什么,有说不清楚,所以决定对BFC的知识进行一个整理。 1.BFC是什么   BFC中三个英文字母B、F、C分别是Block(块级盒子)、Formatting(格式化)、Context(上下文)。   BFC的中文意思是块级格式化上下文。简单的理解BFC, 其从样式上和普通盒子没有什么区别,其从功能上可以将其看作是隔离了的独立容器,容器里面的元素布局不会影响到外面的元素(如浮动、首元素的margin-top加到了父元素上等) , 并且BFC容器具有普通容器没有的一些特点,如包含浮动元素解决内容塌陷等 。   BFC是特殊盒子(容器)所具有的的特性(属性),这种特殊盒子在样式上和普通盒子没有区别;其从功能上可以将其看作是隔离了的容器,容器里面的布局不会影响到外面的元素,并且该容器有一些普通容器没有的特殊能力(作用),如解决高度塌陷、解决margin值叠加等。 2.如何触发BFC   触发BFC的条件: 根元素(html、body) float不会none(left、right) 绝对定位元素(absolute、fixed) display设置为inline-block、table-cell、table-caption、flex、inline-flex overflow不为visible可看见的(hidden

css浮动产生和清除浮动的几种方式

假如想象 提交于 2020-05-07 19:51:02
浮动的语法:float:left/right; 浮动float的原本设计了作用初衷是为了实现文字环绕效果 浮动产生负作用:     1、背景不能显示     2、边框不能撑开父元素     3、margin padding设置值不能正确显示 浮动之后会使父元素内的子元素漂浮在父元素上方,造成父元素边框重叠。所以需要清除浮动来使子元素撑开父元素。 简单来说浮动是因为使用了float:left或float:right或两者都是会产生的浮动。 什么时候使用清除浮动呢?当父元素没有设置宽度或者高度的时,又需要子元素撑开父元素的时候使用清除浮动。 演示: 1 <! DOCTYPE html > 2 < html lang ="en" > 3 < head > 4 < meta charset ="UTF-8" > 5 < title > 浮动副作用 </ title > 6 < style > 7 .container { 8 margin : 40px auto ; 9 width : 400px ; 10 border : 5px solid grey ; 11 background : yellow ;     /* 背景不能显示 */ 12 } 13 .left { float : left ; width : 200px ; height : 100px ; border :

css之float(浮动)的特性

时光总嘲笑我的痴心妄想 提交于 2020-05-07 19:46:25
详解CSS float属性 float本身不脱离文档流,但是和 position:absolute;搭配使用会脱离文档流 阅读目录 基础知识 float的详细细节 float特殊情况 clear属性 清除浮动 float的应用 总结 CSS中的float属性是一个频繁用到的属性,对于初学者来说,如果没有理解好浮动的意义和表现出来的特性,在使用的使用很容易陷入困惑,云里雾里,搞不清楚状态。本文将从最基本的知识开始说起,谈谈关于浮动的应用,出现的问题和解决方案。 回到顶部 基础知识 float,顾名思义就是浮动,设置了float属性的元素会根据属性值向左或向右浮动,我们称设置了float属性的元素为浮动元素。 浮动元素会从普通文档流中脱离,但浮动元素影响的不仅是自己,它会影响周围的元素对齐进行环绕。举例说明如下: Html代码: 1 <div class="box"> 2 <span class="float-ele"> 3 浮动元素 4 </span> 5 普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流普通文档流 6 </div> CSS代码: 1 .box { background: #00ff90; padding: 10px; width: 500px; } 2 .float-ele