草庐IT

html - 为什么margin : auto only work horizontally and not vertically?

我已经看到,在开发网站时,将一个容器(固定高度)垂直居中放置在一个随机高度的容器内,对于Web开发人员(至少是我)来说总是一个噩梦,而当涉及到水平居中容器时(固定宽度)在随机宽度的容器内,margin:0pxauto;往往是标准模型中的一种简单方法。当事情可以这么简单时,为什么CSS不能与margin:auto0px;一起工作,当涉及到将固定高度的容器居中放置在随机高度的容器中时?这样做有什么具体原因吗? 最佳答案 这真的没有您想象的那么可怕,只是不要使用边距。vertical-align确实是您应该依赖的流体高度垂直居中。我拼凑了

html - 为什么 margin 百分比会导致换行?

abc在上面的示例中,字母“c”将换行,但如果我将“margin-left”设置为px单位,“c”将与“a”和“b”在同一行。为什么会这样? 最佳答案 不幸的是,CSS2.1规范似乎对此没有明确的答案。事实上,我认为这完全属于未定义行为的范畴。以下是我能找到的相关要点:没有指定宽度的float将shrinktofittheircontents.对于仅包含内联内容的float内容,需要将float内容设置得足够宽以将其内容放在一行中(尽管有明确的换行符),仅此而已。计算利润率百分比basedonthewidthofthecontain

html - 无法在 Safari 和 Chrome (WebKit) 中将 `margin` 添加到 `<legend>` 元素

编辑:截至2012年6月11日,此错误终于得到修复!https://bugs.webkit.org/show_bug.cgi?id=35981#c1我有一些非常简单的标记:MemberToolsUsernamePassword我试图在legend元素的底部添加一个小边距,这在Firefox2和3以及IE5-8中工作得很好,但是在Safari和Chrome中添加一个margin什么都不做。据我所知,legend只是另一个block级元素,Webkit向其添加margin应该没有问题,还是我不正确? 最佳答案 经过一些研究后,我找到了一

html - margin-top 和 -webkit-margin-before 有什么区别

Webkit添加了自己的特定边距,它们是:-webkit-margin-before:-webkit-margin-after:-webkit-margin-start:-webkit-margin-end:我了解(margin-left和-webkit-margin-start)或(margin-right和-webkit-margin-end)与“从左到右”或“从右到左”语言相关的区别。我的问题是(margin-top和-webkit-margin-before)或(margin-bottom和-webkit-margin-after)之间有什么区别?注意:很明显-webkit前缀

css - 使用 margin/padding 将 <span> 与 <p> 的其余部分隔开

我有一段文本,我想用小斜体写下作者姓名和日期,所以我把它放在中。block并设置样式,但我想将名称隔开一点,所以我将边距(也尝试填充)应用到block,但它无法正常工作。我对这个问题做了一个jsfiddle-HEREhtml看起来像Loremipsumdolorsitamet,consecteturadipisicingelit.Ipsaomnisobcaecatidolorereprehenderitpraesentium.AuthorName,YearCSSp{font-size:24px;font-weight:300;-webkit-font-smoothing:subpixe

html - 嵌套 div 中的 margin-top

我对嵌套div中的margin-top有问题——当我将margin-top应用于嵌套div时,边距应用于父级div而不是嵌套的div。有什么想法吗? 最佳答案 我在父div中得到了overflow:auto的解决方案。 关于html-嵌套div中的margin-top,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2890354/

html - Bootstrap 行类包含 margin-left 和 margin-right 这会产生问题

我正在使用Bootstrap'row'类将divs一个放在另一个之上,工作正常但是.row{margin-left:-15px;margin-right:-15px;}我注意到它指定margin-left和margin-right属性为-13px,因此我的内容向左移动。所以我所做的是添加另一个类如下:.row-no-margin{margin-left:0px;margin-right:0px;}这样就解决了目的,但是还是想知道'margin-left:-15px;'有没有什么具体原因。解决我的问题的最佳方法是什么。 最佳答案 .r

html - 为什么 "margin: auto"不使元素垂直居中?

正如您在下面的演示中看到的,margin:auto;将蓝色div水平居中,但不是垂直居中。为什么不呢?.box{border:1pxsolidred;width:100px;height:100px;}.center{background:blue;width:50px;height:50px;margin:auto;}我的问题不是寻求解决方法。 最佳答案 如前所述,此行为在section10.6.2中指定。CSS2.1,并且与CSS2保持不变.block盒按正常流向从上到下垂直堆叠。此外,verticalmarginsmaycol

html - 在 Internet Explorer 8 中使用 "margin: 0 auto;"

我正在对IE8进行一些高级测试,似乎使用margin:0auto;的旧技术在IE8中并不适用于所有情况。以下HTML片段在FF3、Opera、Safari、Chrome、IE7和IE8兼容中提供了居中按钮,但在IE8标准中没有:(作为变通方法,我可以为按钮添加明确的宽度)。所以问题是:哪些浏览器是正确的?或者这是行为未定义的情况之一?(我的想法是所有浏览器都是不正确的——如果按钮是“display:block”,它不应该是100%宽度吗?)更新:我是个笨蛋。由于输入不是block级元素,我应该将它包含在带有“text-align:center”的div中。话虽如此,出于好奇,我仍然想知

html - 使用 margin :auto to vertically-align a div

所以我知道如果我们使用margin:0auto;,我们可以将一个div水平居中。margin:autoauto;应该按照我认为的方式工作吗?也垂直居中?为什么vertical-align:middle;也不起作用?.black{position:absolute;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,.5);}.message{background:yellow;width:200px;margin:autoauto;padding:10px;}Thisisapopupmessage.JSFiddle