文章详情页
javascript - 如何计算字符串宽度?
浏览:229日期:2023-09-01 09:05:03
问题描述
比如
var str = ’你好,world’.
放到p中,且p是12px的字体,其他条件不考虑。那么str占得宽度是多少呢?
如果都是汉字,那么写8em是可以的。可以里面有中文和符号,js怎么处理呢?
问题解答
回答1:这个算不出来,宽度不仅仅和字号有关,还有字体,间距等等有关。最好说说你的意图,觉得你考虑的方向不对
回答2:用canvas的measureText()API,倒是可以算出来,达到你的效果。但是,很显然,特定加到canvas里面去算,会显得多余,多此一举。//可能,加入间距这些,那就真的不好算了。
回答3:我有一计, 应该可行.把 p 设为 inline, https://jsfiddle.net/afqkt0d1/1/
不可替换的内联元素盒的内容宽度是它里面渲染的内容(的内容宽度)(在所有子级的相对偏移之前)http://www.ayqy.net/doc/css2-...
还有把 p 设为, 浮动或者 absolute, fixed 定位应该也可以, 这样就相当于让 p 拥有了包裹性.
包裹性换种说法就是让元素inline-block化,例如一个p标签默认宽度是100%显示的,但是一旦被absolute属性缠上,则100%默认宽度就会变成自适应内部元素的宽度
http://www.zhangxinxu.com/wor...
标签:
JavaScript
上一条:javascript - html中,图片、JS、CSS通过标签的src或url获取服务器上的资源,那服务器需要为每个资源都写出对应的响应吗?下一条:javascript - 为何CreateElement之后,在这标签前插入子节点,没用
相关文章:
1. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)2. $fields = $values = [];这条代码一直定义不了,一直报错,老师的源码也是被报错的,执行不了,请问该怎么解决这个问题3. USE关键字4. javascript - mysql插入数据时怎样避免与库中的数据重复?5. MySQL 如何 SELECT 除去某一列的所有列?6. 导入phpmyadmin的时候报错了7. MySQL能否给某个字段的值设置有效期?8. 求一个mySQL安装包9. mysql数据库做关联一般用id还是用户名10. MySQL 这句 创建表结构语句的错误在哪?
排行榜
