css距离顶部高度_第一部分:前端项目的常见CSS问题

近年来,渲染和交互在浏览器中变得更加一致,然而,它仍然不是完全统一的,很多小问题都会让你失望。除了这些问题之外,还有不同屏幕尺寸,语言偏好和普通人为错误的变量,我们发现很多小事情要开发给开发人员。

在浏览器中实现用户界面时,最好尽量减少这些差异和问题,以便UI可预测,跟踪所有这些差异很难,因此我将一系列常见问题及其解决方案列为一个方便的参考指南,以便你在开展新项目时使用。

1.button和input元素的重置背景

添加按钮时,重置其背景,否则它将在浏览器中看起来不同。在下面的示例中,Chrome和Safari中显示相同的按钮,后者添加默认的灰色背景。

38d95fae48c02efc36c29e846489a7d2.png

重置背景将解决此问题:

1d6f5bafb6e42a05756908d56d9a1617.png

2.溢出:scroll对比auto

要限制元素的高度并允许用户在其中滚动,请添加overflow: scroll-y。

这在macOS上的Chrome中看起来不错,但是,在Chrome Windows上,滚动条始终存在(即使内容很短)。

这是因为scroll-y无论内容如何都会显示滚动条,而overflow: auto只在需要时显示滚动条。

119a22067707af0760746b407708041b.png

解决方法:

20a20c710421addfe4753011c897eb18.png

3.添加 flex-wrap

只需添加即可使元素表现为flex容器display: flex。但是,当屏幕尺寸缩小时,如果flex-wrap未添加,浏览器将显示水平滚动条。

在移动设备上,浏览器将显示水平滚动条。

974921129166b4105ee89d4eea61601d.png

解决方案非常简单。包装器应该知道当空间不可用时,它应该包装物品。

4e27a212c8ea887bdd8f59b37a72ecf4.png

4. justify-content: space-between当Flex项目的数量动态时,请勿使用

当justify-content: space-between应用于flex容器时,它将分配元素并在它们之间留出相等的空间。

5.长文章和链接

在移动屏幕上查看文章时,长文字或内联链接可能会导致出现水平滚动条。使用CSS'

word-break可以防止这种情况发生。

4c06904ac8dd42b56f1fd2f7c8137870.gif

6.透明渐变

使用透明的起点和终点添加渐变时,它在Safari中看起来会是黑色的。这是因为Safari无法识别关键字transparent。通过替换它rgba(0, 0, 0, 0),它正常工作。

7.当视口不够高时,将元素固定到屏幕顶部

如果将元素固定到屏幕顶部,如果视口不够高会发生什么?简单:它将占用屏幕空间,因此,用户可用于浏览网站的垂直区域将是小而不舒服的,这将减损体验。

c4009e47f651772a14d469c8f4b42c2a.png

在上面的代码片段中,我们告诉浏览器只有在视口的高度等于或大于500像素时才将标题修复到顶部。

同样重要的是:当你使用时position: sticky,除非你指定top属性,否则它将无法工作。

f5acc2c65dd4c648356044e9e3b30c92.gif

​以上是前端开发中第一部分常见CSS问题,第二部在整理中,我们会尽快发布已提供前端开发者参考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值