為什麼用 innerHTML 出來的字的大小會不同?

来源:3-3 innerHTML 属性

sz_yeefun

2016-08-29 16:43

<body>
<h2 id="con">javascript</h2>
<script type="text/javascript">
  var mychar=document.getElementById("con");
  mychar.innerHTML="<h2>javascript</h2>";
</script>
</body>

為什麼 mychar.innerHTML="<h2>javascript</h2>"; 出來的 javascript 的大小,會比原本的 <h2 id="con">javascript</h2> 出來的 javascript 還要大?

写回答 关注

4回答

  • 慕粉3898175
    2016-08-29 17:55:57
    已采纳

    刚又看了下,还真是的。但这是浏览器对h2初始大小的显示问题,套了两层h2和一层显示不一样,跟js代码没有关系。你把h2的style字体大小定义一下,就不会变化了。

    慕粉3898... 回复sz_yee...

    单纯的这样写好像浏览器并不会解析成嵌套的,用开发者工具看下,是解析成<h2 id="con"></h2><h2>javascript</h2>了。

    2016-08-30 08:46:35

    共 2 条回复 >

  • qq_就是小傲娇_03840354
    2016-09-10 21:27:13

    <body>

    <h2 id="con">javascript</h2>

    <script type="text/javascript">

      var mychar=document.getElementById("con");

      mychar.innerHTML="javascript";

    </script>

    </body>

    改成这样应该就一样了,h2是标题,可能是有自动设置的样式吧。

  • 慕粉3898175
    2016-08-29 17:57:52

    你可以试试把代码另存到本地一个html页面

    <style type="text/css">

    h2{font-size:18px;}

    </style>

    <h2 id="con">javascript</H2>

    <p> JavaScript是一种基于对象、事件驱动的简单脚本语言,嵌入在HTML文档中,由浏览器负责解释和执行,在网页上产生动态的显示效果并实现与用户交互功能。</p>

    <script type="text/javascript">

      var mychar=document.getElementById("con");           ;

      document.write("原标题:"+mychar.innerHTML+"<br>"); //输出原h2标签内容

      mychar.innerHTML="<h2>hello world !</h2>";

      document.write("修改后的标题:"+mychar.innerHTML); //输出修改后h2标签内容

    </script>


  • 慕粉3898175
    2016-08-29 17:12:38
    你这样修改后就变成内容实际就变成<h2 id="con"><h2>javascript</h2></h2>了,
    右侧展示区最上的标题大小应该不会变化。


    sz_yee...

    你可以試試看,用 mychar.innerHTML="<h2>javascript</h2>"; 去覆蓋原本的 javascript ,真的會變大。

    2016-08-29 17:19:30

    共 1 条回复 >

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739817 学习 · 9566 问题

查看课程

相似问题