Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 在以3列显示时,是否去掉li项目的第三个边距,使其与页面边缘对齐?_Css_Wordpress_Templates - Fatal编程技术网

Css 在以3列显示时,是否去掉li项目的第三个边距,使其与页面边缘对齐?

Css 在以3列显示时,是否去掉li项目的第三个边距,使其与页面边缘对齐?,css,wordpress,templates,Css,Wordpress,Templates,我到处都找过了,似乎有一个简单的答案,就是不使用IE不支持的第n个child。。解决此问题的最佳方法是什么?尝试css解决方案: 推荐jQuery解决方案: $('ul li:not(:last)').css('border', '1px solid blue'); 演示:仅限IE7+ li { margin-left: 20px; } li:first-child { margin-left: 0; } 有一个很好的答案,诀窍是: 为这些盒子创建一个容器,并在右边空白-20px(或您原来的

我到处都找过了,似乎有一个简单的答案,就是不使用IE不支持的第n个child。。解决此问题的最佳方法是什么?

尝试css解决方案:

推荐jQuery解决方案:

$('ul li:not(:last)').css('border', '1px solid blue');
演示:仅限IE7+

li { margin-left: 20px; }
li:first-child { margin-left: 0; }

有一个很好的答案,诀窍是:

为这些盒子创建一个容器,并在右边空白-20px(或您原来的右边空白) 这样,它们将在三列中对齐,每列的右边距=20个像素,但容器将吃掉最后20个像素


看一看twitter引导,他们有很多东西要教

你能给出一个代码和CSS的可复制示例吗?嗯,我有3个列表项元素,需要填充的宽度是940px如果li对象的宽度是300px,我希望前2个的右边有20px的边距,而不是第3个,以便它在右边对齐。。有没有办法不使用jquery?这是如此频繁,应该有一个CSS的方式,不是吗?他说,由于IE的支持,他不能使用第n个孩子,这意味着他绝对不能使用:不是或:我知道的最后一个孩子。只有IE 6/7/8不支持它。这就是我给出jquery解决方案的原因。虽然这在某些情况下可能有效,但它会增加很多挫折感,因为IE的业绩记录非常糟糕,利润率为负。事实上,这些bug只在某些情况下出现,这让它更加恼火。嗯,我已经用了一段时间,在IE7上进行了测试,没有抱怨(我的场景甚至有点复杂,我不控制列的数量),但我不能超过70%确定,因为IE7和我分手了,我继续前进:)真的吗?我们也是。但是,是的,我花了5年的时间,除了为IE6+编写CSS之外,什么都不做,而且有几次我的利润率为负。没有什么是黑客无法修复的,但在我支持IE的选项列表中仍然处于较低的位置。这似乎是一个完美的解决方案,但不起作用。它仍然将列表项浮动到下一行..这可能是在添加和混合数字,在firebug或chrome developer或IE web developer工具中,尝试逐渐更改列的宽度,直到它们合适为止,这真的是一个宽度+填充+边距+边框的问题,所以在获得正确的数字时出错的可能性是巨大的。这只会在我有一行列表项时起作用,不是吗?我需要有多行内容,其中第三个li没有边距..正确,您可能应该使用jquery解决方案
$('li:nth child(n+3)').css('marginRight',0)
或类似的东西。或者你可以尝试让负利润解决方案发挥作用。有关示例,请参见引导。
li { margin-left: 20px; }
li:first-child { margin-left: 0; }