假设我们有一个标签font-size:65%;
我们如何用pt
or改变它px
?
谢谢!
看起来这篇文章在这里是一个很好的资源。
这里的代码似乎接近你需要的,特别是:
switch (unitSize.Unit.Type)
{
case UnitType.Pixel:
result = (int)Math.Round(unitSize.Unit.Value);
break;
case UnitType.Point:
result = (int)Math.Round(unitSize.Unit.Value*1.33);
break;
case UnitType.Em:
result = (int)Math.Round(unitSize.Unit.Value * 16);
break;
case UnitType.Percentage:
result = (int)Math.Round(unitSize.Unit.Value * 16 / 100);
break;
default:
// other types are not supported. just return the medium
result = 16;
break;
}
乍一看,似乎这样的东西更准确,但我并没有真正测试过它。
public int PercentToPoint(int percent)
{
return (int)Math.Round(Convert.ToDouble(percent * 12 / 100));
}
public int PercentToPixel(int percent)
{
return (int)Math.Round(Convert.ToDouble(percent * 16 / 100));
}
你不能,就像你不能将米转换为秒一样。
font-size: 65%
如果您知道某个单位元素中父元素的字体大小,那么您可以通过将父字体大小的数值乘以数字 0.65 来计算在同一单位中对应的计算值。但这只是意味着在特定情况下计算值,而不是将相对值 65% 转换为绝对值。
我怀疑这是 .net 中的一个预构建函数,它可以轻松地帮助您完成它而无需编写自己的转换器,但这个 jquery 转换器可能会帮助您:
为了帮助你更多,如果你知道宽度,你可以使用下面的公式来计算 px。
假设您有一个 800px 宽的容器 div,如果容器中有一个 384px 宽的 col div,则为 48%:
384 / 800 = 48%