2

我在 div 中有文本和<hr>垂直交替,我添加padding-left到 div 但我不希望单词之间的水平规则受到填充的影响。

有没有办法排除它们?

.menuoptions {
    height:30px;
    width:225px;
    color:#666;
    line-height:30px;
    font-weight:bold;
    padding-left:10px;
}

我尝试.menuoptions hr {...}添加负填充,但不足为奇的是,它没有用。

示例:小提琴

4

5 回答 5

3

您本身不能排除它们,负填充是一个禁忌,但您可以使用负边距<hr>

查看更新的小提琴

于 2013-10-25T10:31:12.870 回答
1

那是因为您尚未重置自定义属性。像<p>,<input>等默认情况下有一些填充和边距,当你添加一个属性时,它会相应地填充。

如果跨浏览器出现这种不一致,我建议您使用 CSS 重置,可能是Eric Mayer 重置

这将使您的所有差异正常化,并使您的页面在所有浏览器中具有统一的一致性。

编码:

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

希望这可以帮助。

于 2013-10-25T10:31:02.637 回答
1

你可以只用一个否定margin-left

.menuoptions hr {
    margin-left: -10px;
}

JSFiddle

于 2013-10-25T10:30:18.263 回答
0

或者,您可以使用 a ul,这将是执行此操作的正确方法:

<ul>
    <li>Firewalls</li>
    <li class="sep"></li>
    <li>Security In Education</li>
    <li class="sep"></li>
    <li>SSL VPN Encryption</li>
    <li class="sep"></li>
    <li>Wireless Access Points</li>
</ul>

CSS:

ul {
    list-style:none;
    margin:0;
    padding:0;
    color:#666;
    font-weight:bold;
    width: 300px;
}
ul > li {
    padding:5px;
}
ul > li.sep {
    height:1px;
    border-bottom: 1px solid #aaa;
    padding:0;
}

小提琴_

于 2013-10-25T10:33:09.723 回答
0
.menuoptions hr {
 margin-left:-10px
}
于 2013-10-25T10:30:33.467 回答