CSS中的百分比計(jì)算方法_第1頁(yè)
CSS中的百分比計(jì)算方法_第2頁(yè)
CSS中的百分比計(jì)算方法_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、CSS中的百分比計(jì)算方法CS豉持多種單位形式,如百分比、px、pt、rem等,百分比和px是 常用的單位,隨著移動(dòng)端和響應(yīng)式的流行,rem、vh、vw也開(kāi)始普遍 使用。今天在SegmentFault社區(qū)碰到了兩個(gè)關(guān)于百分比計(jì)算的問(wèn)題, 一個(gè)是 在translate中使用百分比的時(shí)候,是相對(duì)于哪個(gè) DOM元素的大小計(jì) 算的;另外一個(gè)是在padding、margin等中使用百分比時(shí),百分比又 是怎么轉(zhuǎn)為px的呢?對(duì)于第一個(gè),移動(dòng)距離是根據(jù)自身元素的大小來(lái)計(jì)算的:The percentage refers to the size of the element's box例如:在不知道元素的寬

2、度和高度的情況下,讓元素水平垂直居中 創(chuàng)建類(lèi)名為wrapper的div,并設(shè)置其樣式.wrapper padding: 20px;background:orange;color:#fff;position:absolute;top:50%;left:50%;border-radius: 5px;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);transform:translate(-50%,-50%); 對(duì)于第二個(gè),我認(rèn)為percentage轉(zhuǎn)px應(yīng)該是瀏覽器根據(jù)css規(guī)定來(lái) 完成的,但是具體

3、怎么算呢?Example 1: Margins<div style="width: 20px"><div id="temp1" style="margin-top: 50%">Test top</div><div id="temp2" style="margin-right: 25%">Test right</div><div id="temp3" style="margin-bottom: 75%&

4、quot;>Test bottom</div><div id="temp4" style="margin-left: 100%">Test left</div></div> 得到的offset如下:temp1.marginTop = 20px * 50% = 10px;temp2.marginRight = 20px * 25% =5px;temp3.marginBottom = 20px * 75% = 15px;temp4.marginLeft = 20px * 100% = 20px;然后,我又

5、測(cè)試了 padding,原以為padding的值會(huì)根據(jù)應(yīng)用了該屬 性的相關(guān)元素來(lái)計(jì)算,但讓我驚訝的是,padding也是根據(jù)應(yīng)用該屬性的父元素的寬來(lái)計(jì)算的,跟 margin表現(xiàn)一致。(再插一句:當(dāng)按百 分比設(shè)定一個(gè)元素的寬度時(shí),它是相對(duì)于父容器的寬度計(jì)算的,元素豎向的百分比設(shè)定也是相對(duì)于容器的寬度,而不是高度。)但有一個(gè)坑,上面都是對(duì)于未定位元素。好奇的我又很好奇,對(duì)于非 靜態(tài)定位元素的top, right, bottom,和left的百分比值又怎么計(jì)算呢?Example 2: Positioned Elements<div style="height: 100px; widt

6、h: 50px"><div id="temp1" style="position: relative; top: 50%”>Test top</div><div id="temp2" style="position: relative; right: 25%">Test right</div><div id="temp3" style="position: relative; bottom: 75%">Test

7、 bottom</div><div id="temp4" style="position: relative; left: 100%">Test left</div></div> 得到的offset如下:temp1.top = 100px * 50% = 50px;temp2.right = 100px * 25% = 25px;temp3.bottom = 100px * 75% = 75px;temp4.left = 100px * 100% = 100px;對(duì)于定位元素,這些值也是相對(duì)于父元素的,但與非定位元素不同的 是,它們是相對(duì)于父元素的高而不是寬。when the parent element does not have a height, th

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論