当前位置: 首页 > 知识库问答 >
问题:

如何在隐藏溢出的div中集中内容

丁曦哲
2023-03-14

我的代码大师们。

我想让我的头球转向中心。我想要剪辑溢出:隐藏,但当我调整屏幕的纵向它剪辑图像的右侧,当它的风景它剪辑底部。我想让它同样夹住顶部、右侧、底部和左侧。

真实的图像要复杂得多,只是用这个作为例子。

像TransformOrigin:center这样的东西会非常好,但在这种情况下不起作用。

我耍了个笔头把戏

提前感谢!

      body{
       margin: 0;
       padding: 0;
      }
      .header{
       width: 100%;
       height: 90vh;
       overflow: hidden;
       background-color: black;
      }
      .theSVG{
       width: 100vmax;
       height: 100vmax;
      }
     <div class="header">
      <svg viewBox="0 0 1000 1000" class="theSVG">
       <rect width="1000" height="1000" style="fill:rgb(0,0,255);stroke-        width:3;stroke:rgb(0,0,0)" />
       <rect width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
       <rect y="150" width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
       <rect y="750" width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
       <rect y="900" width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
       <circle cx="500" cy="500" r="500" stroke="green" stroke-width="4" fill="yellow" />
      </svg>
     </div>

共有3个答案

栾瑞
2023-03-14

换衣服。header{}和thesvg{}样式,并使它们如下所示-

css prettyprint-override">body{
  margin: 0;
  padding: 0;
}
.header{
  width: 100%;
  max-height: 90vh;
  overflow: hidden;
  background-color: black;
}
.theSVG{
   max-width: 100vmax;
   max-height: 100vmax;
}
<div class="header">
<svg viewBox="0 0 1000 1000" class="theSVG">
 <rect width="1000" height="1000" style="fill:rgb(0,0,255);stroke-        width:3;stroke:rgb(0,0,0)" />
 <rect width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
 <rect y="150" width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
 <rect y="750" width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
 <rect y="900" width="1000" height="100" style="fill:rgb(255, 0, 0);stroke-width:3;stroke:rgb(0,0,0)" />
 <circle cx="500" cy="500" r="500" stroke="green" stroke-width="4" fill="yellow" />
</svg>
</div>
终逸仙
2023-03-14

备选案文1:

您可以尝试“对象拟合:覆盖”属性。不知道它是否有您需要的浏览器支持。

Q-图像元素是否有与背景尺寸相同的尺寸:覆盖和包含?

文档:https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit

备选案文2:

使用翻译。

Q-在隐藏溢出的较小div中居中一个未知大小的大图像

卫阳曜
2023-03-14

如果您将SVG存储在文件夹中,然后将其设置为标题的背景图像,会解决您的问题吗?然后,您可以设置背景大小为封面,背景位置为中心。这将在所有方面平等地裁减它。

类似的东西:

.header{
    width: 100%;
    height: 90vh;
    overflow: hidden;
    background-image: url("assets/img/header-bg.svg");
    background-size: cover;
    background-position: center;
}
 类似资料:
  • 问题内容: 我在w3schools上阅读了以下代码,但不了解该属性如何影响文本是否显示在右侧。 我知道它用于处理超出范围的内容,但不了解它在这种情况下如何应用。 问题答案: 我尽力消除混乱: 是一个块级元素,与元素一样(它们延伸到父宽度的100%)。这就是为什么默认情况下,如果在这些元素上未声明宽度或显示,它将显示在if 下方的原因。 现在在您的示例中,仅包含浮动元素。这使其折叠到一个高度(尽管如

  • 问题内容: 我有一些HTML表格,其中文本数据太大而无法容纳。因此,它可以垂直扩展单元格以适应此情况。因此,现在发生溢出的行的高度是数据量较小的行的两倍。这是无法接受的。如何强制表格具有相同的行高? 这是一些重现该问题的标记。表格仅应为一行的高度,并隐藏溢出的文字。 问题答案: 需要在单元格上和单元格上指定两个属性。您还需要将移至单元格

  • 问题内容: 我需要在父div上加上圆角以掩盖其子级的内容。在简单的情况下可以正常工作,但是当父级相对或绝对定位时,基于webkit的浏览器和Opera会中断。 这适用于Firefox和IE9: CSS HTML 谢谢您的帮助! 更新: 导致此问题的错误已在Chrome中修复。我还没有重新测试Opera或Safari。 问题答案: 没关系,每个人,我设法通过在包装器和包装盒之间添加一个额外的div来

  • 我正在尝试测试智能GWT应用程序。我有一个关键问题。我无法使用以下命令单击元素: 是回报 找不到xpath“/html/body/div[10]/div[3]/div/div/div[1]/div/form/table/tbody[2]/tr[4]/td/table/tbody/tr/td[2]/span/img”(Capybara::ElementNotFound) 代码如下: 这个img上有很

  • 问题内容: 鉴于此html: 我要填充其容器块的所有剩余垂直空间,我从这里开始: 100%的高度也是如此,这意味着它正在采用其父容器块的高度,即问题是似乎没有起作用,未被裁剪。 另一方面,如果我换行并使用另一个具有与上述相同属性的div,则将得到所需的结果: 与此HTML当然: 我的问题是为什么并且似乎具有相同属性的不同行为?没有包装,有没有办法获得相同的效果? 具有相同属性的两个jsFiddle

  • 问题内容: 在隐藏其父级Div的同时如何显示子Div?能做到吗? 我的代码如下: 问题答案: 我认为这是不可能的。 您可以使用javascript将元素拉出,或复制元素然后显示。 在jQuery中,您可以复制一个元素 然后附加到任何适当的可见元素。