如何更改动态创建的div宽度的h2 depeands的字体大小

时间:2016-09-06 14:48:46

标签: javascript html css

我尝试了一系列改变字体取决于div宽度的选项,但我没有找到解决方案。
所以我想在更改div宽度时自动更改h2的字体。 那么有人可以帮我解决这个问题。
我创建了 h2

var h2 = document.createElement('h2');
h2.innerHTML= "GET AN ESTIMATE OVER VIDEO CHAT";
h2.setAttribute("class", "naslov");

然后我将其插入div:

div2.appendChild(h2) + "\n";

然后我尝试使用css更改字体大小。所以我尝试了下一个选项:

h2{
font-size: 80%;
font-size: 1vw;
font-size: 1vh;
// and few more options
}

有人可以帮助我吗?我可以用css做,或者我应该使用JavaScript?

2 个答案:

答案 0 :(得分:0)

最好使用CSS。另外,要分配类,请使用error: unresolved import `types::Foo`. Maybe a missing `extern crate types`?属性:

className

h2.className = "naslov"; 在旧IE上失败。)

然后在CSS中:

setAttribute("class", ...)

不要在块内重复相同的样式(.naslov { font-size: 14px; /* or whatever */ } ),这会使其无效。

或者如果您不想使用课程,可以直接应用该样式:

font-size

答案 1 :(得分:0)

只要在DOM中插入元素,就会应用css中定义的样式。如果可能的话,最好用css做。当在css中无法完成某些事情时,JavaScript应该是一个选项。



create table test (MustMatch integer,
            PreferredMatch varchar,
            Old varchar,
            New varchar);
-- CREATE TABLE

insert into test (MustMatch, PreferredMatch, Old, New)
values
    (0           ,'Blue'            ,'Old blue'         ,null),
    (1           ,'Blue'            ,'Wrong matc'       ,null),
    (0           ,'Red'             ,'Unpreferre'       ,null),
    (0           ,'Blue'            ,'Preferred'        ,null);
-- INSERT 0 4

UPDATE test 
SET New = (
    SELECT innerTable.Old 
    FROM test innerTable 
    WHERE innerTable.Old != test.Old 
        AND innerTable.MustMatch = test.MustMatch 
    ORDER BY innerTable.PreferredMatch = test.PreferredMatch DESC 
    LIMIT 1
) WHERE Old = 'Old blue';
-- UPDATE 1

//remove following
$header[] = 'Content-Length: ' . $length;

var h2 = document.createElement('h2');
h2.innerHTML= "GET AN ESTIMATE OVER VIDEO CHAT";
h2.setAttribute("class", "naslov");

var div2 = document.querySelector('.div2');
div2.appendChild(h2) + "\n";