css3 - css將div定位到圖片上的固定位置
問(wèn)題描述
如圖我有個(gè)總的大p,寬度和高度都是不定的,里面的手機(jī)線(xiàn)框是背景圖,用的
background-size:contain
定位的,黑框是我想要操作的p,想讓他能覆蓋手機(jī)模型的屏幕,而且放大縮小都會(huì)剛好限制在手機(jī)屏幕內(nèi),該怎么定位呢,能不能實(shí)現(xiàn)?
問(wèn)題解答
回答1:謝邀,這種東西根本不需要啥背景圖。
寫(xiě)了個(gè)demo,點(diǎn)開(kāi)看css代碼和直接預(yù)覽效果。https://jsfiddle.net/vpgL5535/
回答2:我理解的話(huà),“放大縮小都會(huì)剛好限制在手機(jī)屏幕內(nèi)”指的是寬度適應(yīng),如果是要用圖片背景的話(huà),可以考慮用百分比布局。 參考代碼如下(略去不重要的部分):
<p class='frame-container'> <p class='screen-container'> <!-- content here --> </p></p>
.frame-container{ max-width: 559px; min-height: 753px; padding: 13.77% 14.13% 0; background: url(frame.jpg) no-repeat; background-size: 100% auto; box-sizing: border-box;}.screen-container{ padding: 10px; /* 可選,在屏幕范圍內(nèi)仍然增加一點(diǎn)間距比較美觀 */}
對(duì)應(yīng)的結(jié)果是:
其中的要點(diǎn)是:
background-size: 100% auto;來(lái)使背景圖始終縮放至寬度和外層p一致,并保持寬高比。
padding: 13.77% 14.13% 0;取的分別是手機(jī)模型屏幕區(qū)域到背景圖邊緣的距離,從px值轉(zhuǎn)換為百分比值(比例通過(guò)像素值除以圖片像素寬度得到)
(可選)max-width: 559px;使外層p不至于超出背景圖大小(背景圖尺寸為753 x 559),min-height使內(nèi)容較少的時(shí)候也能看到整個(gè)手機(jī)模型。
回答3:配色挺漂亮,嚯嚯嚯。
這個(gè)黑色線(xiàn)框可以直接寫(xiě)成“手機(jī)的”子元素。放在內(nèi)部用百分比的寬高來(lái)控制一下大小,就能自適應(yīng)了。如:
.phone p { width: 80%; height: 80%; margin: 0 auto; margin-top: 10%;}
相關(guān)文章:
1. css - 新手做響應(yīng)式布局, 斷點(diǎn)過(guò)后右側(cè)出現(xiàn)空白,求幫助,謝謝。2. python - 啟動(dòng)Eric6時(shí)報(bào)錯(cuò):’qscintilla_zh_CN’ could not be loaded3. javascript - vue 怎么渲染自定義組件4. javascript - 關(guān)于<a>元素與<input>元素的JS事件運(yùn)行問(wèn)題5. mysql - 查詢(xún)字段做了索引為什么不起效,還有查詢(xún)一個(gè)月的時(shí)候數(shù)據(jù)都是全部出來(lái)的,如果分拆3次的話(huà)就沒(méi)問(wèn)題,為什么呢。6. mysql - 記得以前在哪里看過(guò)一個(gè)估算時(shí)間的網(wǎng)站7. 大家好,我想請(qǐng)問(wèn)一下怎么做搜索欄能夠搜索到自己網(wǎng)站的內(nèi)容。8. ID主鍵不是自增的嗎 為什么還要加null9. MySQL中的enum類(lèi)型有什么優(yōu)點(diǎn)?10. python - 安裝pyspider時(shí)出錯(cuò):No space left on device:
