作者kiki1503 (琦琦壹伍零参)
看板Ajax
标题[问题] 改变字型大小,只靠js可以吗?
时间Sun Oct 11 21:51:03 2009
我想要做的效果是页面上有5个按钮
"最小" "较小" "标准" "较大" "最大"
按了按钮就会模拟浏览器改变字型的大小
我目前是设5种CSS片段
然後动态判断并改变网页里面的指定CSS
可是这样不但效能很差,撰写起来也很繁杂
请问只靠js跟CSS就做出此功能有可能吗?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.45.188.103
1F:推 adamp3:你可以改变指定node中的class CSS中再写各class的字体大小 10/11 22:22
2F:推 ybite:我会这样作:如果你所有字体大小都用百分比或指定的话 10/11 22:23
3F:→ ybite:修正一下说法好了,忘记前一行 Orz 10/11 22:23
4F:→ ybite:你可以做一个container,然後在这个container下的所有字体 10/11 22:24
5F:→ ybite:都用相对的字体(百分比或em),然後当container字体大小变 10/11 22:24
6F:→ ybite:话的时候,其下的所有字体大小都会变 10/11 22:24
7F:→ ybite: ^^^^ 字体大小 这样就只要修改一个物件的字体 10/11 22:24
8F:→ kiki1503:不是很明白.我目前的确是用em指定大小的 10/11 22:32
9F:→ kiki1503:上面像这样 .font1{font-size:0.8em;} 10/11 22:34
10F:→ kiki1503:.font2{font-size:1.2em;} 10/11 22:34
11F:→ kiki1503:之後使用者按按钮时动态改变物件的style值 10/11 22:35
12F:→ kiki1503:所以页面上有多少个物件会显示文字就要写几段程式码 10/11 22:36
13F:→ kiki1503:以确保整页的文字都会跟着改变 10/11 22:36
14F:→ kiki1503:可是每个物件都要写五段(对应5个按钮)感觉有点傻 10/11 22:37
15F:→ kiki1503:所以要上来问一下有没有js可以直接达成 10/11 22:38
16F:→ kiki1503:不用一个元件一个元件去改属性改 10/11 22:39
17F:→ ybite:我的想法是: (1) body.font1{ font-size: 0.8em; } 10/11 22:46
18F:→ ybite:(2) 改的时候直接对body加上font1这个class 10/11 22:47
19F:→ ybite:这样应该整个页面都会立刻变大 10/11 22:47
20F:→ kiki1503:可是这样一来不就全页的字型都一样了@@? 10/11 22:50
21F:→ kiki1503:例如表格之中.标题是1.2em.文字是1em.注解是0.8em 10/11 22:51
22F:→ kiki1503:在body下了之後..全页都变0.8em了..而不是比例向上调整 10/11 22:52
23F:推 tomin:body+1 你其他内容可以盖过去啊 body.main.content{font..} 10/11 22:54
24F:→ tomin:直接body{font-size:1em} document.body.style.fontsize改 10/11 22:55
25F:→ tomin:或是body切换class 10/11 22:56