今天在做网页开发的时候,发现<ul>标签并未定义左间距,但是它的子标签<li>中的值,自动与左边框有大约40px的空隙。具体如下图:
按F12 审查元素,发现ul中多了 -webkit-padding-start: 40px;
看到这里才意识到,原来是浏览器的问题,它们在设计之初就会给相关标签设置默认样式。
解决的方法时给相关标签设置内外间距为0,即在CSS样式表中加一句:ul{margin: 0;padding: 0;-webkit-padding-start: 0;}
因为还有其他很多标签会被浏览器设置默认样式,为了在开发过程中,让标签严格按照我们设置的属性排列,可以在最开始给所有常用标签添加此属性,如:
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, p, blockquote, table, th, td {margin:0;padding:0;-webkit-padding-start:0;}
问题解决。