小编Tom*_*ski的帖子

如何在Elm中实现setTimeout的行为

我正在Elm写一个带有很多时间依赖事件的网页游戏,我正在寻找一种方法来安排特定时间延迟的事件.

在我使用的JavaScript中setTimeout(f, timeout),显然效果非常好,但是 - 出于各种原因 - 我想避免使用JavaScript代码并单独使用Elm.

我知道我可以subscribeTick特定间隔收到时钟滴答,但这不是我想要的 - 我的延迟没有合理的共同点(例如,两个延迟是30ms和500ms),我想避免必须处理许多不必要的滴答声.

我也遇到了TaskProcess-似乎通过他们我莫名其妙地能什么我想Task.perform failHandler successHandler (Process.sleep Time.second).

这可行,但不是很直观 - 我的处理程序只是忽略所有可能的输入并发送相同的消息.此外,我不希望超时失败,因此创建失败处理程序感觉就像是在为图书馆供电,这不是我对这种优雅语言所期望的.

是否存在类似于Task.delayMessage time message我需要的东西(在指定时间后发送给我的消息参数的副本),或者我是否必须为它创建自己的包装器?

elm

22
推荐指数
4
解决办法
4599
查看次数

如何绘制具有不同边框宽度的偶数表边框?

我实现了一个填字游戏生成器.它生成一个带有每行单词和每单元格字母的填字游戏,并且关键字标有更宽的边框和灰色背景,如图中所示: 填字游戏图片

为此,我生成的代码大致如下:

#crossword {
   border-spacing: 0px;
   border-collapse:collapse;
}

.word {
  vertical-align: middle;
  align-items: center;
  text-align: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.cell {
  width: 30px;
  height: 30px;
  margin: 0;
  padding: 0;
}

.letter {
  border: 1px solid black;
}

.keyword {
  border-width: 2px;
  background-color: gray;
}
Run Code Online (Sandbox Code Playgroud)
<table id="crossword">
    <tr class="word">
        <td class="cell letter">W</td>
        <td class="cell letter keyword">C</td>
        <td class="cell letter">A</td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

我的问题是图像中的红色椭圆标记 - 关键字的边框,比其余部分宽1px,打破了填字游戏的顶部和底部线条.我尝试删除border-collapse属性,但这导致每个行连接上出现双边框.

目前我使用table,tr并且td用于生成,但如果有使用divs 的解决方案,我将很乐意切换.

所以我的问题是:假设我能够唯一地处理每个单元格(包括向它们添加特殊类等),如何使顶部和底部边框出现在关键字单元格内而不是外部? …

css css3

8
推荐指数
1
解决办法
560
查看次数

标签 统计

css ×1

css3 ×1

elm ×1