国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

iOS Safari瀏覽器上overflow: scroll元素?zé)o法滑動(dòng)bug解決方法整理

eternalshallow / 2100人閱讀

摘要:而中的網(wǎng)頁(yè)本身就是一個(gè)大的,在脫離文檔流的定位時(shí),子元素的高度如果沒(méi)有在建立之前確定,就不會(huì)觸發(fā)內(nèi)部滑動(dòng),而會(huì)觸發(fā)外部滑動(dòng)。分析父元素不脫離文檔流時(shí),無(wú)此。更新此問(wèn)題的深層原因找到了,詳情請(qǐng)見(jiàn)瀏覽器上元素?zé)o法滾動(dòng)深究

描述

此bug出現(xiàn)需要條件:父元素需使用絕對(duì)定位absolute或固定定位fixed,使用overflow: scroll / auto(或overflow-y: scroll / auto),內(nèi)部子元素是動(dòng)態(tài)大小(例如較大的svg document,近似為內(nèi)嵌iframe,等等)。

bug出現(xiàn)原因:沒(méi)有相關(guān)官方文檔描述該bug。在查閱文檔及自己測(cè)試的時(shí)候總結(jié):iOS safari 會(huì)將overflow:scroll的元素識(shí)別為一個(gè)多帶帶的 ScrollView,并予以一個(gè) -webkit-overflow-scrolling 屬性為auto。而safari中的網(wǎng)頁(yè)本身就是一個(gè)大的ScrollView,在脫離文檔流的定位時(shí),子元素的高度如果沒(méi)有在ScrollView建立之前確定,就不會(huì)觸發(fā)內(nèi)部滑動(dòng),而會(huì)觸發(fā)外部滑動(dòng)。

關(guān)于 -webkit-overflow-scrolling:Safari CSS Reference官方是這樣描述的:

Specifies whether to use native-style scrolling in an overflow:scroll element.

即該屬性會(huì)讓overflow:scroll的元素?fù)碛邢駃OS原生一樣順滑的滑動(dòng)效果。為了實(shí)現(xiàn)此目標(biāo),safari將所有overflow:scroll的元素用原生創(chuàng)建一個(gè)ScrollView,當(dāng)-webkit-overflow-scrolling屬性為touch時(shí),啟用硬件加速,出現(xiàn)順滑效果。

分析

父元素不脫離文檔流時(shí),無(wú)此bug。

父元素在不指定 -webkit-overflow-scrolling:touch時(shí)必定出現(xiàn)無(wú)法滑動(dòng)的問(wèn)題。

當(dāng)內(nèi)部元素為正常的html元素時(shí),無(wú)此bug。

當(dāng)為父元素重新設(shè)置overflow屬性時(shí),可能會(huì)導(dǎo)致safari重建ScrollView而bug消失。(之前版本的實(shí)驗(yàn)室用這種方法解決的,但新海外版不能用這種方法fix,所以是可能)

解決方法:

據(jù)以上分析以及大量測(cè)試得出完美解決方法為:

必須為所有在移動(dòng)端的overflow: scroll元素增加屬性 -webkit-overflow-scrolling: touch。

當(dāng)父元素可不脫離文檔流時(shí)不要脫離文檔流。

在子元素iframe加載完成后可異步將父元素的overflow: scroll屬性重寫(xiě)(此方法可能不成功)。

如以上沒(méi)有解決,則給予子元素一個(gè)min-height,大小不限(略大于效果最好),幫助safari建立ScrollView(親測(cè)最有效)。

更新

此問(wèn)題的深層原因找到了,詳情請(qǐng)見(jiàn):iOS safari瀏覽器上overflow: scroll元素?zé)o法滾動(dòng)bug深究

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/90760.html

相關(guān)文章

  • iOS Safari覽器overflow: scroll元素無(wú)法滑動(dòng)bug解決方法整理

    摘要:而中的網(wǎng)頁(yè)本身就是一個(gè)大的,在脫離文檔流的定位時(shí),子元素的高度如果沒(méi)有在建立之前確定,就不會(huì)觸發(fā)內(nèi)部滑動(dòng),而會(huì)觸發(fā)外部滑動(dòng)。分析父元素不脫離文檔流時(shí),無(wú)此。更新此問(wèn)題的深層原因找到了,詳情請(qǐng)見(jiàn)瀏覽器上元素?zé)o法滾動(dòng)深究 描述 此bug出現(xiàn)需要條件:父元素需使用絕對(duì)定位absolute或固定定位fixed,使用overflow: scroll / auto(或overflow-y: scr...

    kviccn 評(píng)論0 收藏0
  • iOS safari覽器overflow: scroll元素無(wú)法滾動(dòng)bug深究

    摘要:前情提要在之前我寫(xiě)過(guò)一篇文章瀏覽器上元素?zé)o法滑動(dòng)解決方法整理,這篇文章寫(xiě)的是,當(dāng)瀏覽器上出現(xiàn)大于父容器的元素,想給父容器加上實(shí)現(xiàn)內(nèi)部滾動(dòng)效果而失敗的總結(jié)。解決方法反其道而行之。當(dāng)子元素加載完成時(shí),將包裹元素?fù)伍_(kāi),父元素便可以自由滾動(dòng)了。 前情提要 在之前我寫(xiě)過(guò)一篇文章:iOS safari瀏覽器上overflow: scroll元素?zé)o法滑動(dòng)bug解決方法整理,這篇文章寫(xiě)的是,當(dāng)iOS ...

    Steve_Wang_ 評(píng)論0 收藏0
  • iOS safari覽器overflow: scroll元素無(wú)法滾動(dòng)bug深究

    摘要:前情提要在之前我寫(xiě)過(guò)一篇文章瀏覽器上元素?zé)o法滑動(dòng)解決方法整理,這篇文章寫(xiě)的是,當(dāng)瀏覽器上出現(xiàn)大于父容器的元素,想給父容器加上實(shí)現(xiàn)內(nèi)部滾動(dòng)效果而失敗的總結(jié)。解決方法反其道而行之。當(dāng)子元素加載完成時(shí),將包裹元素?fù)伍_(kāi),父元素便可以自由滾動(dòng)了。 前情提要 在之前我寫(xiě)過(guò)一篇文章:iOS safari瀏覽器上overflow: scroll元素?zé)o法滑動(dòng)bug解決方法整理,這篇文章寫(xiě)的是,當(dāng)iOS ...

    shmily 評(píng)論0 收藏0
  • Issues with position fixed & scroll(移動(dòng)端 fixed

    摘要:同時(shí),請(qǐng)?jiān)谄渌苿?dòng)端瀏覽器也這么處理,不要只對(duì)蘋(píng)果做這些處理。蘋(píng)果對(duì)于虎頭蛇尾的做法真讓人頭疼,這作風(fēng)跟巨硬真像。 轉(zhuǎn)載請(qǐng)注明英文原文及譯文出處 原文地址:Issues with position fixed & scrolling on iOS 原文作者:Remy Sharp譯文地址:移動(dòng)端 fixed 和 scroll 問(wèn)題 譯文作者:鎏金圣手火麒麟 最近在做iOS端的H5頁(yè)面...

    Jiavan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<