【问题标题】:Overriding <div> inline width style to make element stretch to contents?覆盖 <div> 内联宽度样式以使元素拉伸到内​​容?
【发布时间】:2013-06-14 21:16:26
【问题描述】:

致力于重新设计客户的 Intranet。我不能修改现有的 HTML,只能提供一个覆盖样式表。

在 HTML 中是一个正文内容包装器 - 每当调整窗口大小时,它都会获得一个明确的宽度和高度设置为内联到窗口的宽度和高度:

<div id="s4-workspace" style="height: 660px; width: 1331px;">

现在,一些页面在这个内容包装器中有一个大表格(至少 1600 像素宽),当窗口小于这个值时,表格会脱离容器,留下所有背景和填充。所有其他元素都遵循包装宽度,向右滚动时会产生一大堆负空间:

有没有办法覆盖内联宽度并允许容器 div #s4-workspace 延伸到其内容?我最好的猜测是设置width: auto !important;,但 chrome 和 firefox 仍然优先考虑内联样式。任何帮助表示赞赏。

【问题讨论】:

  • 你能放个小提琴吗?!因为 chrome/firefox 肯定会考虑 !important note!!可能是您可以检查元素,然后查看哪个超出了您所做的更改
  • 如果这是与 SharePoint 相关的check out this link

标签: html css width css-tables


【解决方案1】:

您可以像这样覆盖元素内联样式:

div[style] {
   background: yellow !important;
    height: auto!important
}

看看这个fiddle

【讨论】:

    【解决方案2】:

    在您的特定实例中(覆盖宽度/高度以防止内容溢出),更改显示类型将满足您的需要:

    http://cssdeck.com/labs/kfpnpruw

    <div class="foo" style="width: 400px; height: 300px;">
      Foo
      <img src="http://placekitten.com/600/300" /><!-- 600x300 image -->
    </div>
    
    .foo {
      background: yellow;
      display: table-cell;
      padding: .5em;
    }
    

    设置为 table-cell 的元素会将宽度和高度属性视为 建议 值,而不是绝对值。

    【讨论】:

    • 正是我需要的。非常感谢!
    猜你喜欢
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 2014-09-03
    • 1970-01-01
    • 1970-01-01
    • 2015-12-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多