如何使用CSS减少类似Arial字体的字符宽度?
你无法减小字符宽度,但可以减小字母间距。
span {
letter-spacing: 0px;
}
letter-spacing: -1px;
,因为使用0px
时我们不会得到任何字母间距的减小。字体保持不变。是的,截至目前(Chrome 26),Chrome仍然不支持小数。 - trejder在你的字体族声明中使用窄字体,这些字体非常普遍。
font-family: "Helvetica Narrow","Arial Narrow",Tahoma,Arial,Helvetica,sans-serif;
使用CSS 3的font-stretch
属性可以实现字体的拉伸。
您可以调整文本的比例。例如:
.narrow {
transform: scaleX(0.5);
}
但要注意 transform-origin
可能会使您的文本移动到其他地方(例如,如果您将其缩放并以其中心为原点)。
transform
来处理 SELECT
元素中的文本。它可以正确地缩放 SELECT
元素内的文本并正确绘制 SELECT
元素,但未能调整对象之间的间距。即使水平尺寸明显较小,SELECT
元素仍占用相同的空间。 - JBHwidth: 200%
(或者更具体地说,是缩放因子的倒数)。 - nicholasfont-weight:
来实现这个效果。CSS3:只需简单地使用transform
和transform-origin
组合:
transform: scaleX(0.85);
transform-origin: 0 100%;
scaleX的值是您所寻求的水平拉伸率(<1表示压缩,>1表示扩展)。
跨浏览器兼容性:FF16、C36、S9、O23 »»
for example:
document.getElementById('button').onclick = function() {
document.getElementById('condensed').style.transform = 'scalex(0.85)';
document.getElementById('condensed').style.transformOrigin = '0 100%';
};
#condensed {
font-family: Arial,'Helvetica Neue',Helvetica,'Liberation Sans',sans-serif;
font-size: 2em;
}
<div><div id="condensed">don't shout it — do something about it!</div></div>
<button id="button">condense me!</button>