这是一款非常有趣的HTML5响应式网页贪吃蛇小游戏。在游戏中,你可以使用键盘的上下左右方向键来控制贪吃蛇的运动方向,屏幕中会随机出现一个绿色的食物,你的任务就是控制蛇去吃这个食物。
制作方法
贪吃蛇游戏是经典手机游戏,既简单又耐玩。通过控制蛇头方向吃食物,使得蛇变长,从而获得积分。这个贪吃蛇游戏的游戏布局和蛇的控制操作等均是在js文件中完成的。在CSS文件中仅是给贪吃蛇和网格布局一些基本样式。其中游戏中网格布局的样式如下:
.tile { background: rgba(0, 0, 0, 0.15); position: absolute; -webkit-transition-property: background, box-shadow, opacity, -webkit-transform; transition-property: background, box-shadow, opacity, transform; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transition-duration: 3000ms; transition-duration: 3000ms; } .tile:before { bottom: 0; content: ''; height: 0; left: 0; margin: auto; opacity: 0; position: absolute; right: 0; top: 0; width: 0; -webkit-transition: opacity 300ms; transition: opacity 300ms; } .tile.path:before { opacity: 1; } .tile.up:before { border-bottom: 4px inset rgba(255, 255, 255, 0.15); border-left: 4px solid transparent; border-right: 4px solid transparent; } .tile.down:before { border-top: 4px inset rgba(255, 255, 255, 0.15); border-left: 4px solid transparent; border-right: 4px solid transparent; } .tile.left:before { border-right: 4px inset rgba(255, 255, 255, 0.15); border-top: 4px solid transparent; border-bottom: 4px solid transparent; } .tile.right:before { border-left: 4px inset rgba(255, 255, 255, 0.15); border-top: 4px solid transparent; border-bottom: 4px solid transparent; }
整个游戏是一个响应式布局,它通过CSS媒体查询来实现不同屏幕尺寸下的不同游戏布局大小。
@media (max-width: 900px), (max-height: 900px) { .tile.up:before, .tile.down:before, .tile.left:before, .tile.right:before { border-width: 3px; } } @media (max-width: 500px), (max-height: 500px) { .tile.up:before, .tile.down:before, .tile.left:before, .tile.right:before { border-width: 2px; } }
具体的js代码请参考下载文件。