圣杯

圣杯布局

我们两清 提交于 2020-03-04 17:58:18
文章目录 什么是圣杯布局 圣杯布局的特点 怎么实现圣杯布局 完整代码展示 双飞翼布局 什么是圣杯布局 圣杯布局是一个两侧宽度固定,中间宽度自适应的三栏布局 圣杯布局的特点 中间部分在DOM结构上优先,以便先行渲染 允许三列中的任意一列成为最高列(三列高度不一样并且可以以任一列的高度为最高) 怎么实现圣杯布局 写下HTML代码 < div class = "container" > < div class = "main" > 中间 < / div > < div class = "left" > 左边 < / div > < div class = "right" > 右边 < / div > < / div > 使三栏都处于左浮状态,并且使中间栏的宽度成父容器的100% . container { min - width : 400 px ; height : 200 px ; } . main { width : 100 % ; height : 100 px ; float : left ; background - color : red ; } . left { width : 200 px ; height : 200 px ; background - color : skyblue ; float : left ; } . right { width : 150

(转转转)使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)

ぃ、小莉子 提交于 2020-01-08 09:12:41
所谓三列自适应布局指的是两边定宽,中间block宽度自适应。这道题在今年网易内推前端工程师面试的时候也被问到。 我这里主要分为两大类,一类是基于position传统的实现,一类是基于 CSS3 新特性弹性盒模型布局实现。 1. 基于传统的position和margin等属性进行布局 这里也分为三种方法,分别为绝对定位法,圣杯布局,自身浮动法。 1).绝对定位法 绝对定位法原理是将左右两边使用absolute定位,因为绝对定位使其脱离文档流,后面的center会自然流动到他们上面,然后使用margin属性,留出左右元素的宽度,既可以使中间元素自适应屏幕宽度。 代码如下: 文档代码: [html] view plain copy <!DOCTYPE html > < html > < head > < meta charset= "UTF-8" > < title >layout_box </ title > < link rel= "stylesheet" type= "text/css" href= "../css/layout_box.css" > </ head > < body > < h3 >实现三列宽度自适应布局 </ h3 > < div id = "left" >我是左边 </ div > < div id = "right" >我是右边 </ div > < div

危险的台阶(运用了重心以及归纳总结的方法)

主宰稳场 提交于 2019-12-10 21:28:51
首先,这道题我之前轻看了,在此,我认错了,但知错能改,善莫大焉,我也花了相当多的来理清思路。 先说一说我一开始的思路吧,因为条件说了质量相等,长度相等,密度均匀,所以想当然的重心位于几何中心,所以应该是L/2处,但是这次真的是吃大亏了。 后来我才知道,其实当是两个的时候,最长伸出距离的确是L/2,但是当是3个,4个…n个的时候就不一样了。 为了让自己能够清楚地认识到错误,并且给那些尚不知情的伙伴们一个答案,就在这里记录下来,以便参考。 首先,当是两块砖的时候,能够延伸的最大长度就是L/2,然后当是3,4,n的时候,就需要使用归纳法来求最大长度了。 首先,明确有n+1块砖,而从顶块到n-1块砖的重心应该是第n块砖的最右边缘,其次是前n块砖的重心是位于第n+1块砖的最右边缘, 如图所示 设n-1块砖的重心为x1,设n块砖的重心为x2,则两者之间的距离则为Z,又第n块砖受到的压力和自身的重力平衡,所以mg(n-1)Z=mg(L/2-Z),解得Z=L/2n. 所以前n块砖的最大距离为1-n∑L/2n。 圣杯,虽然表面上被称作万能愿望机,但已经失去了原本的光华。污秽不堪的黑泥已经染指了圣杯,还是说,这些黑泥出自圣杯本身呢。这些并不应该在面对一个暴乱的圣杯的时候去思考。 「格蕾」 「是,亚德!」格蕾从右手处拉出装着亚德的鸟笼 「直接进入解除封印阶段吧」 「欸」格蕾对我的指令似乎有所迟疑

JS中的继承,重点:圣杯模式

匿名 (未验证) 提交于 2019-12-02 22:56:40
1.原型链的继承 Grand.prototype.lastName = ‘Ji’; function Grand(){ } var grand = new Grand(); Father.prototype = grand; function Father(){ this.name=’hehe’; } var father = new Father(); Son.prototype = father; function Son(){ } var son = new Son(); 缺点:不仅继承了Grand的lastName,而且继承了Father的name; 2.借用构造函数: call和apply 不能继承借用构造函数的原型,每次构造函数都要多走一个函数 3.共享原型 Father.prototype.lastName = ‘Deng’; function Father(){ } function Son(){ } function inherit(Target ,Origin){ Target.prototype = Orgin.prototype; } inherit(Son,Father); //extend inherit继承font-size : inherit(自动继承父亲的font-size(默认值)) 不能随便改动自己的原型(改变一个父子都会改变) 4.圣杯模式

圣杯布局和双飞翼布局

≡放荡痞女 提交于 2019-11-28 07:15:56
  圣杯布局及双飞翼布局主要用于解决左右两边盒子固定宽度。中间盒子宽度自适应的问题。   圣杯布局: <!doctype html> <html> <head> <title>圣杯布局</title> <meta charset="utf-8"> <style> body { min-width: 800px; margin: 0; padding: 0; } .container { padding: 0 300px 0 200px; overflow: hidden; } .header { width: 100%; height: 100px; background-color: lightblue; } .footer { width: 100%; height: 50px; background-color: lightblue; } .middle, .left, .right{ position: relative; } .middle { float: left; width: 100%; height: 100px; text-align: center; background: lightcoral; } .left { float: left; width: 200px; margin-left: -100%; left:-200px; height: