html css学几天呀,html和CSS学习第7天

弯曲方向

将flex-direction允许您更改Flex容器的轴。默认值flex-direction是row。使用此值,Flex项目将按照方向布置writing-mode。同样,这意味着默认情况下从左到右,从上到下。其他值如下:

row-reverse:交换主开始和主端。如果写入模式是从左到右,则Flex项目现在从右到左排列。

列:交换主轴和交叉轴。如果书写系统是水平的,则Flex项目现在是垂直布局的。

column-reverse:与列相同,但相反。

justify-contentFlex

Containers的属性调整主轴上Flex项目的位置。可能的值是:

flex-start(默认)

柔性端

中央

空间之间

空间的周围

这里我们设置justify-content为center使Flex项目在主轴上居中

对齐项

align-items是补充justify-content。align-items调整Flex项在十字轴上的定位方式。可能的值是:

flex-start(默认)

柔性端

中央

底线

伸展

这里我们设置align-items为center使Flex项目在Cross

Axis上居中

stretch也很简单:它会导致Flex项目从Cross

Start延伸到Cross End。baseline导致Flex项目沿其基线对齐。基线是根据Flex项目的内容计算的

柔性包装

到目前为止,每个Flex

Container只有一条Flex Line。使用flex-wrap您可以创建具有多个Flex

Lines的Flex容器。flex-wrap的可能值是:

nowrap(默认)

包裹

总结反向

如果flex-wrap设置为wrap,如果在一条Flex

Line上没有足够的空间,Flex Items将包裹到其他Flex Lines上。在横轴方向上添加了额外的Flex线。

wrap-reverse与换行相同,只是新的Flex

Lines将在Cross Axis上以相反的方向添加。

订购

order是最简单的。设置Flex项目的订单会在呈现时调整其顺序。在此示例中,我们将order一个Flex项设置为-1,使其在任何其他Flex项之前显示。

余量

您可能熟悉正常作用的margin:

auto;。在Flexbox中它可以做同样的事情,但它更强大。“自动”保证金将吸收额外空间。它可用于将Flex项目推送到不同的位置。

这里我们margin-right:

auto;在第一个Flex

Item上声明,导致所有额外空间被吸收到该元素的右侧:

在这里,我们margin:

auto;用来实现CSS布局的圣杯:真正的垂直居中

html代码

class="flex-container">

<

class="hljs-name" style="-webkit-font-smoothing: antialiased;

color: rgb(250, 61, 88);">div class="flex-item">I'm

centered!

class="hljs-name" style="-webkit-font-smoothing: antialiased;

color: rgb(250, 61, 88);">div> <

class="hljs-regexp" style="-webkit-font-smoothing: antialiased;

color: rgb(227, 136, 0);">/div>

CSS代码

.flex-container {

display: -webkit-flex;

display: flex;

width: 300px;

height: 240px;

background-color: Silver;

}

.flex-item {

background-color: DeepSkyBlue;

width: 100px;

height: 100px;

margin: auto;

}

flex:[编号]

此语法指定一个数字,表示此Flex项应采用的可用空间的比率。

在此示例中,第一个Flex项占用了2/4的可用空间,另外两个Flex项占用了每个可用空间的1/4:

流动模型

因为在默认状态下,块状元素的宽度都为100%。实际上,块状元素都会以行的形式占据位置。

绝对定位的

z-index

如果父元素z-index有效,那么子元素无论是否设置z-index都和父元素一致,会在父元素上方

float的特性

1.破坏性

被设置了float的元素会脱离文档流

float为什么会被设计成具有破坏性,为什么会脱离文档流?这一点非常重要!其实原因非常简单——为了要实现文字的环绕效果。

2.包裹性

div设置了float之后,其宽度会自动调整为包裹住内容宽度,而不是撑满整个父容器。

3。清空格

正常的img中间是会有空格的,因为多个

blog_197f513470102yenr.html标签会有换行,而浏览器识别换行为空格,这也是很正常的

“清空格”这一特性的根本原因是由于float会导致节点脱离文档流结构。它都不属于文档流结构了,那么它身边的什么换行、空格就都和它没关系的,它就尽量的往一边去靠拢,能靠多近就靠多近,这就是清空格的本质

vertical-align 属性。

该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐。允许指定负长度值和百分比值。这会使元素降低而不是升高。在表单元格中,这个属性会设置单元格框中的单元格内容的对齐方式。

可能的值

描述

baseline

默认。元素放置在父元素的基线上。

sub

垂直对齐文本的下标。

super

垂直对齐文本的上标

top

把元素的顶端与行中最高元素的顶端对齐

text-top

把元素的顶端与父元素字体的顶端对齐

middle

把此元素放置在父元素的中部。

bottom

把元素的顶端与行中最低的元素的顶端对齐。

text-bottom

把元素的底端与父元素字体的底端对齐。

length

%

使用 "line-height" 属性的百分比值来排列此元素。允许使用负值。

inherit

规定应该从父元素继承 vertical-align 属性的值。

网页元素应用上那些与表格相关的display属性值后,能够模仿出与表格相同的特性。

display:table=>相当于“table”标签; display:table-row=>相当于“tr”标签; display:table-cell=>相当于“td”标签;

、table-cell同样会被其他一些CSS属性破坏,例如float,

position:absolute,所以,在使用display:table-cell与float:left或是position:absolute属性尽量不用同用。

4、设置了display:table-cell的元素对宽度高度敏感,对margin值无反应,响应padding属性,基本上就是活脱脱的一个td标签元素了。

calc()的运用

为了解决撑破容器的问题,以前我们只能去计算div.box的宽度,用容器宽度减去padding和border的值,但有时候,我们苦于不知道元素的总宽度,比如说是自适应的布局,只知道一个百分值,但其他的值又是px之类的值,

width: calc(100% - 140px);

这句代码的含义是:width的值等于

它的父元素的总宽度—140px。

这样的话,容器就不会存在被撑爆的问题。

calc()最大的好处就是用在流体布局上,可以通过calc()计算得到元素的宽度。

calc()的运算规则

calc()使用通用的数学运算规则,但是也提供更智能的功能:

使用“+”、“-”、“*” 和 “/”四则运算;

可以使用百分比、px、em、rem等单位;

可以混合使用各种单位进行计算;

表达式中有“+”和“-”时,其前后必须要有空格,如"widht: calc(12%+5em)"这种没有空格的写法是错误的;

表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。

block

分享:

a4c26d1e5885305701be709a3d33442f.png喜欢

0

a4c26d1e5885305701be709a3d33442f.png赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

a4c26d1e5885305701be709a3d33442f.png

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值