Javascript 对于具有相同数量的项和相同的类名的两个列表,填充是不同的

Javascript 对于具有相同数量的项和相同的类名的两个列表,填充是不同的,javascript,html,css,padding,Javascript,Html,Css,Padding,我已经创建了两个列表,并使用JS将项目插入其中。它们都共享相同的类名,但是当我设置填充时,列表项的结果不同。 这是我的密码 HTML 请查看fiddle查看完整代码顶部填充的和底部填充的百分比基于包含的块级元素的宽度: 因此,由于contacts和contactInfo上没有相同的显式宽度设置,并且每个列表中的内容具有不同的自然宽度,因此填充具有不同的计算值。填充顶部和填充底部的百分比基于包含的块级元素的宽度: 因此,由于contacts和contactInfo上没有相同的显式宽度设置,并且每个

我已经创建了两个列表,并使用JS将项目插入其中。它们都共享相同的类名,但是当我设置填充时,列表项的结果不同。 这是我的密码

HTML


请查看fiddle查看完整代码顶部填充的
和底部填充的
百分比基于包含的块级元素的宽度:


因此,由于contacts和contactInfo上没有相同的显式宽度设置,并且每个列表中的内容具有不同的自然宽度,因此填充具有不同的计算值。

填充顶部和填充底部的百分比基于包含的块级元素的宽度:


因此,由于contacts和contactInfo上没有相同的显式宽度设置,并且每个列表中的内容具有不同的自然宽度,因此填充具有不同的计算值。

填充顶部和填充底部的百分比基于包含的块级元素的宽度:


因此,由于contacts和contactInfo上没有相同的显式宽度设置,并且每个列表中的内容具有不同的自然宽度,因此填充具有不同的计算值。

填充顶部和填充底部的百分比基于包含的块级元素的宽度:


因此,由于contacts和contactInfo上没有相同的显式宽度设置,并且每个列表中的内容具有不同的自然宽度,因此填充具有不同的计算值。

因此,最好使用另一个相对单位,如
em
。类似于
padding:1em 0看起来不错。同意。特别是如果两个列表的字体大小相同。因此,最好使用另一个相对单位,如
em
。类似于
padding:1em 0看起来不错。同意。特别是如果两个列表的字体大小相同。因此,最好使用另一个相对单位,如
em
。类似于
padding:1em 0看起来不错。同意。特别是如果两个列表的字体大小相同。因此,最好使用另一个相对单位,如
em
。类似于
padding:1em 0看起来不错。同意。特别是如果两个列表的字体大小相同。
  <main>
    <section class="section" id="top">
        <h4>Contacts</h4>
    </section>

     <section class="section" id="mid">
         <ul id="contacts"></ul>
         <ul id="contactinfo"></ul>
    </section>

    <section class="section" id="bottom">
        <select id="dropdown">
            <option value="email">Email</option>
            <option value="number">Phone Number</option>
        </select>
    </section>
</main>
   $('#contacts').append('<li class="itemname" id="'+i+'"><a href="#">' + contactarray[i].name + '</a></li>');
   $('#contactinfo').append('<li class="itemname">' + contactarray[i][$('#dropdown').val()] + '</li>');
  .itemname {
    padding: 11% 0 11% 0;
    border: 1px solid rgb(19, 19, 19);
}