align-item和align-self的区别?

align-item和align-self的区别?

为什么用align-items:center 垂直居中不了

http://img1.sycdn.imooc.com//climg/5f6076730977420333351507.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
好帮手慕慕子 2020-09-15 19:00:36

同学你好,整体思路就是使用定位让元素固定在一个位置上,然后通过给里面的元素添加overflow:auto;属性,实现内容超出滚动。

以源码为例,解析这部分功能实现的思路如下:

使用绝对定位,结合top等属性,让menu-inner盒子高度为当前屏幕剩余的空白区域(即:不包含nav和tab-abr区域)。然后添加的overflow:hidden;属性,超出范围的内容就隐藏起来了。

http://img1.sycdn.imooc.com//climg/5f609b76099b0cd114650856.jpg
menu-inner下的子元素left-bar和right-content下right-list元素设置了overflow:auto,内容超出就会出现垂直方向的滚动条,实现内内容的滚动。

http://img1.sycdn.imooc.com//climg/5f609c0d0932930814710761.jpg

http://img1.sycdn.imooc.com//climg/5f609c8b0989bd9113910702.jpg

同学可以结合源码理解一下

截图中黄色的被盖住了,老师测试源码没有这种情况,建议同学新建提问,将你写的完整直接粘贴过来,老师针对同学的代码进行测试,帮助同学准确的定位与解决问题,祝学习愉快~

提问者 陈立天 2020-09-15 18:42:26

还有就是把这个黄色的也盖住了

http://img1.sycdn.imooc.com//climg/5f609a8209d9cab506150340.jpg

提问者 陈立天 2020-09-15 18:25:20

老师能解答一下这个什么功能实现定位的么? 开始我我发现自己写的页面滚动会把header-tab也拖动不见了 要加上这个 那么这个什么原理?

http://img1.sycdn.imooc.com//climg/5f60966309863b3734661486.jpg

好帮手慕慕子 2020-09-15 17:11:17

同学你好, 对于你的问题解答如下:

1、 align-item和align-self的区别如下:

(1)align-item是设置在弹性盒子上,针对弹性盒子在所有的项目元素有效。示例:

http://img1.sycdn.imooc.com//climg/5f60845709f629d605960836.jpg

弹性盒子下的所有项目都垂直居中了。

http://img1.sycdn.imooc.com//climg/5f60845d09455fe408320131.jpg

(2)align-self是设置在项目元素上的,针对的是单个元素有效。示例:

http://img1.sycdn.imooc.com//climg/5f60847a0945223906160830.jpg

只有第一个项目垂直居中了

http://img1.sycdn.imooc.com//climg/5f60848b091f24d908460122.jpg

2、同学截图的代码中,item-text元素属于弹性盒子下的项目元素,不可以使用align-items属性,只能使用align-self属性,所以需要通过align-self属性设置居中。

如果还有疑问,可以提交作业,备注上你的问题,批作业的老师会针对你的完整项目测试,给出解决方案。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.WebAPP开发与小程序
  • 参与学习           人
  • 提交作业       622    份
  • 解答问题       6815    个

微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师