gpt4 book ai didi

javascript - 拖入 GIF 时表格变形

转载 作者:行者123 更新时间:2023-11-29 19:52:44 25 4
gpt4 key购买 nike

为什么当我将我的 gif 拖到单元格中时表格会变形?我该如何解决?当我将 gif 拖到单元格中时,我希望表格(和每个单元格)保持原来的大小。

这是我的情况的一个 jsfiddle: http://jsfiddle.net/MjMcr/3/

<body>
<img id="drag1" src="http://files.myopera.com/supersagitta/Pokemon/BW_Sprites/Pikachu.gif" draggable="true" ondragstart="drag(event)">
<div id="play1">
<table border="1" class="play">
<tr>
<td>
<div id="div1" class="room left" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</td>
<td>
<div id="div2" class="room center" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</td>
<td>
<div id="div3" class="room right" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</td>
</tr>
<tr>
<td>
<div id="div4" class="room left" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</td>
<td>
<div id="div5" class="room center" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</td>
<td>
<div id="div6" class="room right" ondrop="drop(event)" ondragover="allowDrop(event)"></div>
</td>
</tr>
</table>
</div>

CSS

.play {
width: 100%;
height: 100%;
}
.play td {
}
.play .room {
width:100%;
height:100%;
border:1px solid #aaaaaa;
}
.left{
background-color:blue;
}
.center{
background-color:white;
}
.right{
background-color:red;
}

JavaScript

    function allowDrop(ev) {
ev.preventDefault();
}

function drag(ev) {
ev.dataTransfer.setData("Text", ev.target.id);
}

function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}

最佳答案

只需添加 table-layout: fixed; 到表格和 height: 50%; 为你的行:

http://jsfiddle.net/MjMcr/4/

这解决了您的问题 - 但您应该注意,正如评论中所说,您根本不应该使用表格来构建它。表格用于表格数据,而不是用于构建布局。也许你不想读 this question on SO ("Why not use tables for layout in HTML?")

关于javascript - 拖入 GIF 时表格变形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17153080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com