html - CSS - 使外部文本在内部文本更改时不移动

标签 html css

如何做到当我更改 2 个 span 元素之间的文本时它们不会向左或向右移动?

这是 HTML 的样子(table-layoutfixed):

<td>
    <span class='sub'>-</span>
    <span class='amount'>0</span>
    <span class='add'>+</span>
</td>

我希望 amount-+ 跨度移动的情况下发生变化(数量将保持一个小数字,所以我'我不担心重叠),因为当我从 01 时,-+ 跨度会更近一起。这并不会造成很大的不便,所以我不想要复杂的 CSS 或 JavaScript hack,我只是想知道。

最佳答案

span 是行内元素,因此与 block 级元素(例如 div)不同,它会忽略用户定义的宽度,宽度由浏览器在称为布局或回流的阶段计算。知道了这一点,您需要做的就是通过设置其 display css 属性并为其指定一些固定的 width 来强制该元素表现为一个 block :

<style type="text/css"> 
.block-span {   
  width:20px;
  display:inline-block; 
 } 
</style>

...
<span class="amount block-span">0</span>
...

关于html - CSS - 使外部文本在内部文本更改时不移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25826844/

相关文章:

javascript - 向下滚动延迟加载动画(并删除额外的 javascript 库)

html - 如何阻止文本区域自动换行?

html - HTML 文件 : how to separate CSS rules when classes and id's can be the same? 中有多个 "HTML"标签

html - 如何在 Safari 浏览器中将背景颜色拉伸(stretch)到视口(viewport)的左侧和右侧

android - HTML5 <audio> 标签在 Android Webview 中不起作用

javascript - 使用 Canvas 绘制应用程序

css - 使用 xslt 创建可变长度的梁

css - 如何将列表项显示为保留从左到右顺序的列?

jquery - 输入框最后的当前颜色

javascript - 通过 URL 调用 javascript 函数