美文网首页
前端知识点(5)

前端知识点(5)

作者: 爱抽烟的臭屁虫 | 来源:发表于2019-05-30 19:27 被阅读0次

                        高度塌陷

文档流中,父元素的高度默认是被子元素撑开的,也就是子元素多高,父元素就多高,但是当为子元素设置浮动时,子元素会完全脱离文档流,此时将会导致子元素无法撑起父元素的高度,导致父元素 高度坍塌,所以父元素的高度坍塌了,则父元素下的所有元素都会向上移,这样将会导致页面布局混乱,所以在开发中一定要避免出现高度坍塌的问题,我们可以将父元素写死,以避免坍塌的问题出现,但是一旦高度固定住了,父元素的高度降板自动适应子元素的高度,所以这种方案是不推荐使用的。

如下面的代码:

.box1{

            border:10px red solid;

            height:100px;

            }

.box{

        width:100px;

        height:100px;

        background-color:blue;

        为子元素设置项左浮动

        faloat:left;

        }

<div class='box1'>

    <div class='box2'></div>

</div>

<div class='box3'</div>

运行结果:


                         解决高度坍塌

根据W3C的标准,在页面中元素都一个隐含的属性叫做Block Formatting Context(块的格式化环境)简称BFC,该属性可以设置打开或者关闭,默认是关闭的

当开启元素的BFC以后,元素将会具有如下的特性:

1.父元素的垂直外边距不会和子元素重叠

2.开启BFC的元素不会被浮动元素所覆盖

3.开启BFC的元素可以包含浮动的子元素

如何开启元素的BFC

1.设置元素浮动

- 使用这种方式开启,虽然可以撑开父元素,但是会导致父元素的宽度丢失,而且使用这种方式也会导致下边的元素上移,不能解决问题

2.设置元素绝对定位

3.设置元素为inline-block

- 可以解决问题,但是会导致宽度丢失,不推荐使用这种方式

4.将元素的overflow设置为一个非visible的值

推荐方式:将overflow设置为hidden是副作用最小的开启BFC的方式

实现解决高度坍塌:

在代码中加入

overflow:hidden;


                            导航条

*{

    margin:0;

    padding:0;

    }

设置ul

.nav{

    list-style:none;

    设置ul

      .nav{

    去除项目符号*

      list-style:none;

    为ul设置一个背景颜色

      background-color:#6495ed;

设置一个宽度

在IE6中,如果为元素指定了一个宽度,则会默认开启hasLayout

        width:1000px;

设置居中

        margin:50px auto;

解决高度塌陷

        overflow:hidden;

}

设置li

      .nav li{

/*设置li向左浮动*/

        float:left;

width:12.5%;

}

.nav a{

将a转换为块元素

        display:block;

为a指定一个宽度

        width:100%;

/*设置文字居中*/

        text-align:center;

设置一个上下内边距

        padding:5px 0;

去除下划线

        text-decoration:none;

设置字体颜色

        color:white;

设置加粗

        font-weight:bold;

}

设置a的鼠标移入的效果

      .nav a:hover{

background-color:#cc0000;

}

创建导航条的结构

<ul class='nav'>

    <li><a href='#'>首页</a></li>

    <li><a href='#'>新闻</a></li>

    <li><a href='#'>联系</a></li>

    <li><a href='#'>关于</a></li>

    <li><a href='#'>首页</a></li>

</ul>

运行结果:


                            清除浮动

清除浮动有三个可用的参数:

left:清除左侧浮动的元素

right:清除右侧浮动的元素

both:清除两侧浮动的元素

.box1{

width:100px;

height:100px;

background-color:yellow;

/*设置box1向左浮动*/

  float:left;

清除box1浮动对box2的影响

float:right;

.box3{

width:300px;

height:300px;

background-color:skyblue;

clear:both;

}

<div class='box1'></div>

<div class='box2'></div>

<div class='box3'></div>

运行结果:


                            相对定位

定位分为四种,分别为:

static:默认值,元素没有开启定位

relative:开启元素的相对定位

absolute:开启元素的绝对定位

fixed:开启元素的固定定位(也是绝对定位的一种)

源代码:

.box1{

height:200px;

background-color:red;

position:relative;

}

.box2{

width:200px;

height:200px;

background-color:yellow;

        position:relative;

        left:100px;

top:200px;

}

.box3{

width:200px;

height:200px;

background-color:yellowgreen;

}

.s1{

position:relative;

width:200px;

height:200px;

background-color:yellow;

}

<div class='box1'></div>

<div class='box2'></div>

<div class='box3></div>

<span class='s1'>我是一个span</span>

代码实现:

相关文章

  • 前端知识点(5)

    权重:CSS权重指的是样式的优先级,有两条或多条样式作用于一个元素,权重高的那条样式对元素起作用,权重相同的,后写...

  • 前端知识点(5)

    高度塌陷 文档流中,父元素的高度默认是被子元素撑开的,也就是子元素多高,父元素就多高,但是当为子元素设置浮动时,子...

  • 原生js开发AJAX数据分页缓存模块

    效果知识点:原生Js实现ajax数据交互、数据分页技术原理剖析,前端数据缓存, H5domAPI应用, 职业化前端...

  • 【速速收藏学习】前端开发学习路线

    前端开发学习路线:<点击立即开始学习> •学习前端,无非就是这些知识点,学习+动手实践,别无选择 • 5大阶段,1...

  • web前端如何入门学习?需要掌握什么姿势?

    初学者更快入门web前端,以下是关于web前端方面的教程知识点。web前端是app开发、h5网页等主流的程序语言,...

  • web前端开发小白快速入门的10个方法

    10种方式助初学者更快入门web前端,以下是关于web前端方面的教程知识点。web前端是app开发、h5网页等主流...

  • h5上传图片压缩

    涉及知识点 uniapp项目h5,涉及到前端图片压缩上传 uni.chooseImage() canvas压缩 参...

  • 前端知识点

    前端知识点 HTML5与 CSS3.0 新特性? html5的新特性: 添加了video,radio标签 添加了c...

  • HTML5前端开发原来有这么多优势!

    H5前端开发其实并不简单,要成为一个优秀的前端工程师需要学的知识点非常多。 那么HTML5有哪些优势呢? 一跨平台...

  • 2018 浅谈前端面试那些事

    整理了一份最新前端知识点,希望对各位要面试的程序猿们能有帮助。 知识点汇总 1.HTML HTML5新特性,语义化...

网友评论

      本文标题:前端知识点(5)

      本文链接:https://www.haomeiwen.com/subject/lynptctx.html