关于这个问题,我到处都是堆栈溢出,并且找到了各种答案,但是没有一个适合我的需求。我将背景匹配设置为“固定”,但大多数人知道这会在ios设备上出错。有什么方法可以将我的财产设置为“滚动”(当它不起作用时)?如果该属性从一开始就设置为“滚动”,则图片不会调整大小并执行时髦的操作。
我已经尝试过各种解决方案,包括'@supports',使用Web-kit和其他stackOverflow建议的解决方案...它们都没有起作用。我希望有一种解决方法,甚至只是希望功能可以在无法解决的时候起作用,而在无法解决的情况下被禁用。
这是我的CSS
.sectionHeader{
background-size: cover;
background-position: center top;
background-attachment: fixed;
max-width: 100%;
height: 100vh;
padding: 0px !important;
margin: 0px !important;
}
这是应用于其中的div之一:
<div id="welcome">
<div id=jumboName class="jumbotron jumbotron-fluid sectionHeader d-flex align-items-center" style="background-image: url('data/welcome.JPG');">
<div class="row mx-auto my-auto align-items-center">
<p class="display-3" style="color:WHITESMOKE; text-shadow: 0px 0px 5px black;">Name</p>
</div>
</div>
</div>
同样,此操作的目标是找到解决方法,或者只是不让电话上的代码中断而仍然对计算机产生影响。这在大多数Web浏览器中已经发生,在无法处理该属性时,默认背景样式默认为“滚动”(勇敢,歌剧等)。愚蠢的ios设备还不够智能。
答案 0 :(得分:1)
我终于找到了一个很好的答案!唯一不使用此功能的浏览器是移动设备。因此,我们可以使用媒体查询。
private func setNavigationBarAesthetics() {
if let navigationBar = self.navigationController?.navigationBar {
navigationBar.setBackgroundImage(UIImage(named: "testbg"), for: .default)
}
self.searchController.searchBar.delegate = self
self.searchController.delegate = self
searchController.searchResultsUpdater = self
searchController.definesPresentationContext = false
searchController.obscuresBackgroundDuringPresentation = false
navigationItem.searchController = searchController
navigationItem.hidesSearchBarWhenScrolling = true
searchController.hidesNavigationBarDuringPresentation = false
}
使用此方法,我们可以将background-attachment属性设置为fixed,除非设备上未启用任何悬停功能。
答案 1 :(得分:0)
据我所知,没有办法检测到这样的故障。