首页 新闻 会员 周边

一个关于img的宽度问题

0
悬赏园豆:15 [待解决问题]
<body>

    <img src="public/img/board.png" id="img">

</body>
<script>
var img=document.getElementById("img");
img.style.width="100%"//这个可以;
img.width="224"//这样也可以;
img.setAttribute("width","100%")//也可以
img.width="100%"//为什么这样就不行了?,显示图片宽度是0

</script>

 

夜皇帝的主页 夜皇帝 | 初学一级 | 园豆:89
提问于:2016-04-20 15:29
< >
分享
所有回答(3)
0

可能是你的浏览器不支持这么写吧,又或者是img标签不支持,你可以见 img标签换成table里的td标签试一下。我之前理解有误。

斯拉克 | 园豆:223 (菜鸟二级) | 2016-04-20 16:10

而且你的js写法不严谨,每一行代码最后你至少要加个分号吧,

支持(0) 反对(0) 斯拉克 | 园豆:223 (菜鸟二级) | 2016-04-20 16:11

@斯拉克: 我是注释掉测试的

支持(0) 反对(0) 夜皇帝 | 园豆:89 (初学一级) | 2016-04-20 16:14

@夜皇帝: 你可以按照我说的那样去试试,换个标签试一下。

支持(0) 反对(0) 斯拉克 | 园豆:223 (菜鸟二级) | 2016-04-20 16:15
0

尝试查看一下img.width的类型是number

console.log(typeof e.width);//number

但是翻看W3C文档发现img标签的Width和Height是支持两种写法的。

属性值

描述
pixels 以像素为单位的高度或宽度值。
percent 以包含元素的百分比计的高度或宽度值。

所以我猜测HTML标签属性和DOM属性并不完全是一样的。

你可以这样写

img.setAttribute("width", "50%");

 

写代码的小2B | 园豆:4371 (老鸟四级) | 2016-04-20 16:22

number类型,正解啊。

支持(0) 反对(0) 斯拉克 | 园豆:223 (菜鸟二级) | 2016-04-20 16:30

但是我试了一下,td标签,按照那种百分比的设置方法,他的第四个写法是奏效的。

支持(0) 反对(0) 斯拉克 | 园豆:223 (菜鸟二级) | 2016-04-20 16:32
0

没这个方法.

只有.Widch() 需要string类型.

晋升中的FE | 园豆:519 (小虾三级) | 2016-04-20 18:36
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册