内容背景被切断

时间:2017-03-22 07:48:11

标签: css background scrollbar overflow

向右滚动,您会看到背景被截断:

div {
  width: 300px;
  overflow: auto;
}

p {
  background: green;
}
<div>
  <p>ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.</p>
</div>

为什么会这样?解决方案是什么?

4 个答案:

答案 0 :(得分:1)

试用此代码

这是因为p没有获得其实际宽度

p {
    background: green;
    float: left;
}

&#13;
&#13;
div {
  width: 300px;
  overflow: auto;
}

p {
  background: green;
  float:left;
}
&#13;
<div>
  <p>ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.</p>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

在与width相同的元素中使用overflowbackground。我编辑了代码段

&#13;
&#13;
div {
  width: 300px;
  overflow: auto;
}

p {
  display: inline-block;
  background: green;
}
&#13;
<div>
  <p>ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.</p>
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

<div>
  <p>ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.</p>
</div>  


div {
      width: 300px;
      overflow: auto;
    }

    p {
      background: green;
    overflow: auto;
    }

Fiddler link https://jsfiddle.net/o0eqoqmh/

答案 3 :(得分:0)

或者您可以将p设置为内联或内联块元素

&#13;
&#13;
div {
  width: 300px;
  overflow: auto;
}

p {
  background: green;
  display: inline-block;
  /* OR 
  display: inline;
  */
}
&#13;
<div>
  <p>ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.ThisIsSomeText.</p>
</div>
&#13;
&#13;
&#13;