我試圖找到背景圖像的頂部和左側座標,它們通過應用某些CSS規則已從視口中移出。很難用言語來解釋,這裏是一個視覺的例子:確定使用CSS移動的背景圖像的左上座標
黑匣子:視口
箱紅色:<div>
用background-image
藍箱:<div>
包含<a>
當我做與background-image
的,我得到0px 0px
。這很有意義,因爲容器位於視口內,並且從頂部和左側開始。
然而,是<div>
的背景圖像已經被轉移到了左側(它可能已被轉移到頂部也是如此),因此座標應該從<div>
情況有所不同。所以我的問題是:
我將如何閱讀(我不想改變)如何找到在這種情況下的任何頁面的綠點座標?我的意思是,瀏覽器必須知道它需要多少個像素來削減background-image
,對吧?
我目前使用Javascript訪問Web/Dom API。我願意使用任何東西(無證可能?)來實現這一點。
您是否嘗試過計算圖像的寬度,從窗口寬度中減去,然後除以2?如果它始終居中,那麼應該獲得每邊窗戶外的金額。如果圖像是右對齊的,只需減去兩個寬度。 – brouxhaha
@brouxhaha感謝您的評論。這只是一個例子,我試圖找到一個通用的解決方案。如果背景圖像不是中心,但是其他東西呢? – Nobita
這是一個很好的問題。我看到的另一個問題是,如何訪問背景圖像,或者如果它不是背景圖像,而是內嵌圖像?如果他們周圍的div縮小,會導致圖像縮小?如果圖像打破了包含div的邊界會怎麼樣?如果大於包含div,但溢出:隱藏設置?有很多變數需要考慮。 – brouxhaha