thinkuncle / thinkuncle.github.io

thinkuncle
4 stars 0 forks source link

CSS的一些常用基本概念 #113

Open thinkuncle opened 7 years ago

thinkuncle commented 7 years ago

在日常开发中css样式都是copy过来就用,很少真正系统的学习,导致在用了几年后遇到同样的问题,还是要去网上各种搜,到现在我仍然傻傻搞不清楚position 属性的不同之处,不梳理一下感觉对不起我之前跳过的坑。

position

position 属性规定元素的定位类型,默认值static

描述
absolute 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
fixed 生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
relative 生成相对定位的元素,相对于其正常位置进行定位。因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。
static 默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
inherit 规定应该从父元素继承 position 属性的值。

overflow

overflow 属性规定当内容溢出元素框时发生的事情。

描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。
thinkuncle commented 7 years ago

CSS 遇到的一些问题

使用overflow:hidden 无法禁用移动端的滚动效果

移动端是基于touch事件。增加position: fixed; 内容就没有滚动条了。但是同时貌似modal上的滚动效果也没了。