久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

css3 - 想用rem給width與height進行賦值時,該怎么計算呢?以誰為參照物呢?

瀏覽:131日期:2023-07-31 09:10:00

問題描述

rem在設置寬度和高度的時候,該怎么進行計算呢?比如html{font-size: 62.5%;}那么font-size:2rem;與font-size:20px是一樣的但是width:20rem與width:200px是不一樣的。所以,當想用rem進行width與height進行設置時,該怎么計算呢?以誰為參照物呢?

問題解答

回答1:

rem用來設置字體大小,也可以用于網格布局。rem中的r代表根元素,它的值就是根元素設置的字體大小。在大多數情況下,根元素就是html了。這個單位可以解決em設置字體時,由于繼承帶來的問題,具體如下:

body { font-size: 14px;}p { font-size: 1.2em; // calculated at 14px * 1.2, or 16.8px}

假設html存在這樣的結構:

<body> <p>Test <!-- 14 * 1.2 = 16.8px --><p> Test <!-- 16.8 * 1.2 = 20.16px --> <p>Test <!-- 20.16 * 1.2 = 24.192px --> </p></p> </p></body>

但是用rem能避免

html { font-size: 14px;}p { font-size: 1.2rem;}

這樣在上面的那三個嵌套的p的字體大小都是 1.2*14px = 16.8px 了。在布局中,如下:

.container { width: 70rem; // 70 * 14px = 980px}

參考文章

回答2:

rem這個單位是相對于根元素的,是可以用來設置width和height的,只是計算的基準是html標簽的font-size值,這里建議html的font-size值用px,不要用百分比; 不過呢html的font-size最好是通過js來動態計算一個數值:

//- 設置根元素fontSize~(function (doc, win) { var _root = doc.documentElement,resizeEvent = ’orientationchange’ in window ? ’orientationchange’ : ’resize’,resizeCallback = function () { var clientWidth = _root.clientWidth,fontSize = 20; if (!clientWidth) return; if(clientWidth < 640) {fontSize = 20 * (clientWidth / 320); } else {fontSize = 20 * (640 / 320); } _root.style.fontSize = fontSize + ’px’;}; if (!doc.addEventListener) return; win.addEventListener(resizeEvent, resizeCallback, false); doc.addEventListener(’DOMContentLoaded’, resizeCallback, false);})(document, window);回答3:

其中的rem原理我就不說了,我想說的就是,rem,真的不能用在height和width中, 在height和width中,一般情況下使用百分比就可以了. 在width里面使用rem的話,你會發現, 他計算出來的數值,和你想要的不一樣.舉個例子吧: 當你在html里面設置的font-size為10px的話,

html{ font-size:10px;}p{ font-size:2rem; //得到的結果是20px 你會微微一笑,艸,你騙我呢. 不急,show u code}p{ height: 2rem; //這時候,請打開你的控制臺,觀察p的高度,你會發現是24px;TM!!!怎么不是20px呢}

原理就是, font-size 對于height 和 width 而言最小值是 12px, 而對于font-size而言, 你想設多少,就設置多少。 這個無可厚非。咳咳~~所以綜上所述: 在height 里面一般使用 百分比就夠了(你整個12px 你自己也不好計算呀,而且如果動態的時候真的給你整個 <12px的,到時候哭都來不及).在font-size里面,最好就使用rem, 因為這個單位是專門為他開發的.

回答4:

呵呵,rem只是用來設置字體大小,沒有誰告訴你rem可以設置width和height

標簽: CSS
主站蜘蛛池模板: 亚洲国产成人av | 久久小视频 | 国产午夜精品久久久久免费视高清 | 欧美日韩国产精品一区 | 欧美福利视频 | 国产一区二区精品在线观看 | 精品视频在线观看一区二区 | 91麻豆精品国产91久久久久 | 91精品国产美女在线观看 | 午夜影院在线观看 | 中国人xxxx片99ww | 国产精品2区 | 国产精品久久久久无码av | xnxx 美女19| 亚洲一区二区福利 | 99中文字幕 | 国产精品精品视频 | 日韩一区在线视频 | 99久久99久久精品国产片果冻 | 精品美女在线观看视频在线观看 | 国产精品久久久久久久久久免费看 | 欧美在线综合 | 精品www| 日本不卡高字幕在线2019 | 成人在线h| 一级毛片免费在线 | 亚洲啊v| 欧美成人一区二区 | 亚洲免费在线视频 | 精品国产精品国产偷麻豆 | 亚洲视频免费 | 欧美日韩精品网站 | 精品一区二区久久久久久久网站 | 免费视频爱爱太爽了 | 播放一级黄色片 | 亚洲一区二区三区四区五区午夜 | 日本久久精品视频 | 精品一区二区三区三区 | 97色综合 | 伊人精品在线 | 亚洲人成中文字幕在线观看 |