Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用css获取项目的当前字体大小_Css_Sass - Fatal编程技术网

如何使用css获取项目的当前字体大小

如何使用css获取项目的当前字体大小,css,sass,Css,Sass,我需要使用CSS(CurrenSize+px)计算字体大小。 例如: body * {font-size: calc([CurrenSize] + 3px) !important;} 我在jQuery中这样做,但工作并不顺利,所以我想问我是否可以在CSS中这样做。 在CSS中(此代码有效,但100%使文本非常小,这就是我需要当前字体大小的原因): 在js中 “当前”字体大小为1em…因此您可能需要calc(1em+3px) (或者可能是1rem,这取决于您是否希望嵌套子元素的字体大小为多个。)

我需要使用CSS(CurrenSize+px)计算字体大小。 例如:

body * {font-size: calc([CurrenSize] + 3px) !important;}
我在jQuery中这样做,但工作并不顺利,所以我想问我是否可以在CSS中这样做。 在CSS中(此代码有效,但100%使文本非常小,这就是我需要当前字体大小的原因):

在js中


“当前”字体大小为
1em
…因此您可能需要
calc(1em+3px)


(或者可能是
1rem
,这取决于您是否希望嵌套子元素的字体大小为多个。)

我的理解是,您希望在整个页面上将所有字体大小增加3倍。只有在使用em而不是px定义字体大小的情况下,才能在css中实现这一点。这样,字体对家长来说是真实的,您可以轻松地旋转它们

所以现在你可以选择改变你所有的字体大小或只是更改CSS以使用字体大小变量

如果元素没有font-size属性,jQuery代码可能无法正常工作。因为您的元素可以从父元素继承字体大小属性。 试试这个:

let element = document.getElementById("element"));
let computedFontSize = window.getComputedStyle(element).fontSize;
现在,您可以这样做:

element.style.fontSize = computedFontSize+=3;

当前字体大小的定义是什么,因为您将更改它,然后新的字体大小将成为当前字体大小?似乎是循环定义我有太多选项,如:.item1{font size:20px}.item2{font size:18px}.item3{font size:15px},所以我想更改所有这些的字体大小似乎是XY问题。您首先定义了一个包含大量字体大小的糟糕CSS,现在您正在寻找一种黑客方法来更改所有字体大小。我会考虑调整CSS文件,使字体大小定义更容易,你可以很容易地在一个地方(考虑CSS变量,例如EM单位等),这意味着没有办法获得当前的字体大小使用CSS。可能的副本应用到一个元素,它是好的,但对所有元素(考虑他的选择器)每个级别将增加3倍,因为1em是相对于字体szei的值的。有太多的选项,如:.item1{font size:20px}.item2{font size:18px}.item3{font size:15px},所以我想更改所有级别的字体大小them@user10943992你不能这样改变它,如果您使用的是less或sass,您可以这样做,但在这里我看不到其他解决方案,可以手动更改所有sass。此外,选择器
body*
不会覆盖选择器
。item1
,因此这些项的字体大小不会更改。只有那些没有选择字体大小的元素才会被删除。(也就是说,例如使用
第一项。
em
将比
div
中的其余文本大)我的jQuery代码工作正常,但它是在页面已经加载之后,访问者看到的文本跳过链接未找到此处!语法pb
let element = document.getElementById("element"));
let computedFontSize = window.getComputedStyle(element).fontSize;
element.style.fontSize = computedFontSize+=3;