我正在为平板电脑开发jQuery Mobile应用程序,发现默认元素大小有点小。我试图改变元初始规模而没有运气:(
是否有可能让jQuery Mobile扩展所有内容,比如30%? 也许,一个CSS技巧会做到吗?
TIA, 阿德里安。
答案 0 :(得分:0)
我将建议一种JavaScript方式,我已经使用了几次:
HTML:
<div class="foo">content to be scale to 130%</div>
<div>content that won't be scaled</div>
JavaScript:
var scale = function(target, css_rule, value)
{
var type = document.defaultView.getComputedStyle(target, "").getPropertyValue(css_rule).match(/[a-zA-Z]{0,2}$/); //Get unit type from end of string
value = (parseInt(document.defaultView.getComputedStyle(target, "").getPropertyValue(css_rule)) * value); //Get current value of css_rule and multiply by entered value
target.style.cssText += css_rule + ':' + value + type + ';'; //Add css_rule to cssText with value and type
}
然后您可以使用以下代码调用此代码:
var elem = document.getElementsByClassName('foo')[0];
scale(elem, 'font-size', 1.3);
此示例将该类的font-size
扩展30%,然后您可以将其应用于您希望扩展的任何和所有CSS规则。
您可能希望扩展我的脚本以删除已被某些Regular Expressions
覆盖的旧cssText规则,您可以在此here.
我希望这会有所帮助,并且可能有一种更简单的方法,但可以随时调用此代码,让您轻松放大和缩小元素
注意:
此示例使用一种不常见的方式来获取元素的样式Computed Style
,该方法仅适用于Safari,Opera,Google Chrome和Firefox。
对于Internet Explorer使用:elem.currentStyle