打造趣味Twitter应用:“ILoveHam”实战指南
立即解锁
发布时间: 2025-08-24 00:40:53 订阅数: 3 

### 打造趣味 Twitter 应用:“I Love Ham” 实战指南
#### 1. 项目背景与创意来源
在如今众多经典的 “展示 Twitter 消息应用” 层出不穷的背景下,我们不妨尝试利用 Twitter API 来开发一些别具一格的应用。本次要构建的 “I Love Ham” 游戏灵感源自几年前的一系列网络节目。游戏规则十分简单:用户会看到两个押韵的搜索词,需要猜测哪个词在 Twitter 上的推文数量更多。虽然规则简单,但这个小游戏却能带来数小时的乐趣。
#### 2. 项目准备与 HTML 搭建
首先,我们要搭建项目的基本结构。以下是 “I Love Ham” 应用的基本 HTML 文档代码:
```html
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>I Love Ham</title>
<link href='http://fonts.googleapis.com/css?family=Droid+Sans&v1' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="css/style.css">
<script type="text/javascript" src="js/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="js/main.js"></script>
<meta name="viewport" content="width=320, height=device-height, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" />
</head>
<body>
<section>
<h2>Which one of these fabulous tweets has more search results?!</h2>
<ul id="choices">
</ul>
</section>
</body>
</html>
```
这个应用的 HTML 标记比之前的 “Who's That Tweet?” 应用更简洁,并且文件结构也很相似:
- `/index.html`
- `/css/styles.css`
- `/js/main.js`
在创建文件和组织项目文件夹结构时,建议使用人类可读、易于理解且在项目中保持一致的命名方案。例如,避免使用 “supercooldocument12 - 667.html” 这样的文件名,因为这会让最终用户难以找到文件,并且在后续更新和编辑应用时可能会带来问题。另外,可以使用当前日期命名文件或使用版本控制系统来保持条理。
#### 3. CSS 样式设计
CSS 部分与之前的应用也有相似之处,但有一些关键差异和实用的 CSS 属性。以下是 CSS 代码的不同部分:
##### 3.1 基本重置
```css
/*** RESET ***/
html, body, header, section, div, p, ul, li, h2 {
margin:0;
padding:0;
}
ul, li {
list-style:none;
}
/*** GLOBAL CSS ***/
html, body {
width:100%;
height:600px;
overflow-x:hidden;
}
body {
font-size:14px;
font-family: 'Droid Sans', Arial, Helvetica, sans-serif;
background:#993366;
}
h2 {
font-size:18px;
color:#fff;
text-shadow:1px 1px 5px rgba(0,0,0,0.9);
}
```
这里使用了 `text-shadow` 属性为 `h2` 标签的文本添加了阴影效果,无需设计师制作压缩图像,直接在客户端浏览器中实时呈现,节省了资源。
##### 3.2 列表项设置
```css
/*** SECTION ***/
section {
margin:20px 10px;
padding:10px;
}
section ul {
width:100%;
margin:25px 0;
}
section li {
margin:10px 0;
padding:10px 5px 10px;
min-height:22px;
line-height:32px;
border-radius:7px;
background:-webkit-gradient(linear, 0% 0%, 0% 100%, from(#a1a1a1), to(#A1A1A1), color-stop(.6,#8A8A8A));
-webkit-box-shadow:0 0 20px rgba(0,0,0,0.5);
box-shadow:2px 2px 10px rgba(0,0,0,0.8);
}
```
为列表项添加了渐变背景和阴影效果,使用了三色渐变系统,比之前的应用更有层次感,同时也节省了客户端资源。
##### 3.3 特殊选择器使用
```css
section li.fail {
background:#990000;
color:#fff;
}
section li.win {
background:#009900;
color:#fff;
}
section li.fail, section li.win {
border-bottom:1px solid #fff;
}
section blockquote {
margin:0;
padding:0;
}
section blockquote:before {
content: "\201c\ ";
font-size:26px;
float:left;
margin-right:5px;
padding-left:5px;
}
section blockquote:after {
content: "\201e\ ";
font-size:26px;
margin-left:5px;
padding-left:5px;
}
```
使用 `:before` 和 `:after` 选择器为 `blockquote` 元素添加引号,通过 `content` 属性可以包含十六进制代码来显示键盘上不常见的字符。
#### 4. JavaScrip
0
0
复制全文
相关推荐









