文本宽度不适用于跨度

Text width not applying in span

我看不出如何修复跨度宽度使其不晃动:

<!DOCTYPE html>
<html>   
<script>   
function go() {
x='this message will self-destruct in five seconds.......';
xl=x.length;
x+=x;
n=0;
setInterval('ticker.textContent=x.slice(n++,n+10);if (n>xl-10) n=0;',100);
}  
</script>
<body onload='go();'>
<span style='background-color:red;width:100pt' id='ticker'></span>
</body>
</html>

A link 到 JSFiddle.

span 元素是一个 inline 元素,这意味着它的 widthheight 由内容控制,您需要使用 display:inline-blockdisplay:block 取决于与其他元素的所需交互。

显示为"block":

<span style='background-color:red; width:65pt; display: block' id='ticker'></span>

您也可以将其包装在包含 div 中并将样式应用于 div..

http://jsfiddle.net/w9ccq96x/1/

<div style="background-color:red;width:100px;overflow:hidden;"><span id='ticker'></span></div>