【发布时间】:2019-08-08 18:02:51
【问题描述】:
我的 Web 应用程序是响应式的,我必须支持 iOS 10 及更高版本。
我有一个高度是动态的容器。为了处理 iPhone X 布局,我使用@supports 指令,如下所述:iPhone X layout features with CSS Environment variables。
这是我迄今为止实现的代码(不要考虑90px,因为这只是一个示例):
const wrapperWhenCollapsed = {
height: 'calc(100% - 90px)',
'@supports (padding-top: constant(safe-area-inset-top))': {
height: 'calc(100% - 90px - constant(safe-area-inset-bottom))',
},
'@supports (padding-top: env(safe-area-inset-top))': {
height: 'calc(100% - 90px - env(safe-area-inset-bottom))',
},
};
const wrapperWhenExpanded = {
height: '100%',
'@supports (padding-top: constant(safe-area-inset-top))': {
height: 'calc(100% - constant(safe-area-inset-bottom))',
},
'@supports (padding-top: env(safe-area-inset-top))': {
height: 'calc(100% - env(safe-area-inset-bottom))',
},
};
基于此,我有几个问题:
-
padding-top在@supports指令中的用途是什么? - 有没有办法在不使用
padding-top的情况下使用@supports指令?
我的目标是验证浏览器是否支持constant 或env。如果不是,则应用后备值。
谢谢,洛伦佐
【问题讨论】:
标签: ios css web safari responsive