以往设计图给的字号一般最小就是12px, 开发人员一般是使用谷歌浏览器来进行调试运行。
谷歌浏览器上显示字体最小为12px,css设置font-size:10px,运行代码显示结果仍然是12px大小,但是挡不住甲方有时就是强调使用的字号,必须是特别小的字号,就比如说某些网站设计的噱头–“买房送老婆”,但其实你不知道的是,在“老婆”两个字之后,还有一个小到你需要用放大镜去看的“饼”字,就问你惊不惊喜,意不意外?
谷歌浏览器,以及最近将取代IE的Edge浏览器,显示小于12px字号的解决办法
了解一点开发的人都知道,谷歌浏览器显示的最小字号就是12px,即使你设定的字体为10px,默认显示的也是12px,当然除了谷歌之外,新出的Edge浏览器也有同样的问题,主要原因还是因为内核使用的是同一个,常用的浏览器除了这两个之外,其实IE、火狐浏览器、移动端等小于12px的字号大小还是可以正常显示的。下图是我自己做的一个实验,结果如图所示:

试想若是全篇文字8px大小,阅读的时候得有多费眼睛,估计大多数人看到这么小的字体之后,都会自觉放大页面也去看吧?其实最小字号12px只是谷歌浏览器的一个默认的基础值设定,只是为了不影响正常阅读而已,既然是设定值,那理所当然是可以更改的。
更改谷歌浏览器的基础设定12px值,用来解决开发人员的调试问题
步骤:

使用缩放transform:scale(),使用较为广泛
优点:单行、多行文本都可使用
缺点:只是视觉效果变小,并不会改变盒子的实际占位,在对齐其他盒子时不太友好
步骤:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div {
width: 300px;
height: 30px;
margin-bottom: 5px;
background: rgb(206, 151, 151);
}
.box1 {
font-size: 12px;
}
.box2 {
font-size: 10px;
transform: scale(0.83333);
transform-origin: 0 0;
white-space: nowrap;
}
</style>
</head>
<body>
<div class="box1">我是正常的12px的文字大小 Hello world!</div>
<div class="box1">我是正常的12px的文字大小 Hello world!</div>
<div class="box2">我是正常的10px的文字大小 Hello world!</div>
<div class="box2">我是正常的10px的文字大小 Hello world!</div>
</body>
</html>

使用SVG 矢量图设置text
优点: 1px-12px任意字号均可设置,可对设计界面进行对齐调整
缺点:不支持多行文本
步骤:
在svg包含text标签,给svg设置宽高,文本内容写在text标签中;
因为svg是矢量图的概念,也就是说svg其实是一个图片,给图片内容进行缩放。实际的文本字号大小由text标签设置生效,但内容显示多少要看svg设置的宽高是多少,超出区域外的内容不会显示。
text标签的x y值这里必须用到的;
text的x和y值默认为0,x值表示文字左下角开始的x坐标;y值表示文字左下角开始的y坐标,一般文本显示都是左对齐,所以x值为0,y值为字号大小。当然,如果是右对齐或者居中对齐的x y的值则需要另外设置对应的值。注意:x y的值是写在标签后面,并且无单位!
text文本设置样式的方法和普通标签设置的方法不一样,例如文本颜色填充是用fill设置,并不是color;如果需要文本缩进,或者是距离顶部有多宽的间隙,需要使用dx和dy;
dx:文本在水平方向上移动的像素大小
dy:文本在垂直方向上移动的像素大小
该方法是可以设置任意字号大小,还能根据设计图的需要进行对齐调整,但svg没有换行符!!!所以文本并不支持换行显示,即使你设置的svg的宽高足够大,即使设置文本可以换行white-space: pre;也没有任何效果。 也就是说,svg默认所有单个或连续多个空格、换行符等转为一个空格来显示。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
div{font-size: 12px;}
svg{width: 100px;height: 100px;background-color: chocolate;}
svg text {font-size: 8px;}
</style>
</head>
<body>
<div>我是最小12px字体大小 hello world!</div>
<svg>
<!-- svg是矢量图的概念方法,这里的文本并不支持换行显示,即使你设置的svg的宽高足够大 -->
<!-- text文本设置样式的方法和普通标签设置的方法不一样,例如文本颜色填充是用fill设置,并不是color -->
<text x="0" y="8" >我是10px字体大小 hello world!</text>>
</svg>
</body>
</html>

我有一个Ruby程序,它使用rubyzip压缩XML文件的目录树。gem。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。我在rubyzipdocumentation中找不到一种为创建的ZIP文件指定压缩级别的方法。有人知道如何更改此设置吗?是否有另一个允许指定压缩级别的Ruby库? 最佳答案 这是我通过查看rubyzip内部创建的代码。level=Zlib::BEST_COMPRESSIONZip::ZipOutputStream.open(zip_file)do|zip|Dir.glob("**/*")d
我在使用omniauth/openid时遇到了一些麻烦。在尝试进行身份验证时,我在日志中发现了这一点:OpenID::FetchingError:Errorfetchinghttps://www.google.com/accounts/o8/.well-known/host-meta?hd=profiles.google.com%2Fmy_username:undefinedmethod`io'fornil:NilClass重要的是undefinedmethodio'fornil:NilClass来自openid/fetchers.rb,在下面的代码片段中:moduleNetclass
我得到了一个包含嵌套链接的表单。编辑时链接字段为空的问题。这是我的表格:Editingkategori{:action=>'update',:id=>@konkurrancer.id})do|f|%>'Trackingurl',:style=>'width:500;'%>'Editkonkurrence'%>|我的konkurrencer模型:has_one:link我的链接模型:classLink我的konkurrancer编辑操作:defedit@konkurrancer=Konkurrancer.find(params[:id])@konkurrancer.link_attrib
我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i
我正在查看instance_variable_set的文档并看到给出的示例代码是这样做的:obj.instance_variable_set(:@instnc_var,"valuefortheinstancevariable")然后允许您在类的任何实例方法中以@instnc_var的形式访问该变量。我想知道为什么在@instnc_var之前需要一个冒号:。冒号有什么作用? 最佳答案 我的第一直觉是告诉你不要使用instance_variable_set除非你真的知道你用它做什么。它本质上是一种元编程工具或绕过实例变量可见性的黑客攻击
所以我在关注Railscast,我注意到在html.erb文件中,ruby代码有一个微弱的背景高亮效果,以区别于其他代码HTML文档。我知道Ryan使用TextMate。我正在使用SublimeText3。我怎样才能达到同样的效果?谢谢! 最佳答案 为SublimeText安装ERB包。假设您安装了SublimeText包管理器*,只需点击cmd+shift+P即可获得命令菜单,然后键入installpackage并选择PackageControl:InstallPackage获取包管理器菜单。在该菜单中,键入ERB并在看到包时选择
我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问
我试图在索引页中创建一个超链接,但它没有显示,也没有给出任何错误。这是我的index.html.erb代码。ListingarticlesTitleTextssss我检查了我的路线,我认为它们也没有问题。PrefixVerbURIPatternController#Actionwelcome_indexGET/welcome/index(.:format)welcome#indexarticlesGET/articles(.:format)articles#indexPOST/articles(.:format)articles#createnew_articleGET/article
我正在尝试在Ruby中制作一个cli应用程序,它接受一个给定的数组,然后将其显示为一个列表,我可以使用箭头键浏览它。我觉得我已经在Ruby中看到一个库已经这样做了,但我记不起它的名字了。我正在尝试对soundcloud2000中的代码进行逆向工程做类似的事情,但他的代码与SoundcloudAPI的使用紧密耦合。我知道cursesgem,我正在考虑更抽象的东西。广告有没有人见过可以做到这一点的库或一些概念证明的Ruby代码可以做到这一点? 最佳答案 我不知道这是否是您正在寻找的,但也许您可以使用我的想法。由于我没有关于您要完成的工作
我是rails的新手,想在form字段上应用验证。myviewsnew.html.erb.....模拟.rbclassSimulation{:in=>1..25,:message=>'Therowmustbebetween1and25'}end模拟Controller.rbclassSimulationsController我想检查模型类中row字段的整数范围,如果不在范围内则返回错误信息。我可以检查上面代码的范围,但无法返回错误消息提前致谢 最佳答案 关键是您使用的是模型表单,一种显示ActiveRecord模型实例属性的表单。c