购物清单 Javascript 程序列表项的文本格式不正确
Shopping List Javascript program text of list items not formatting properly
我正在尝试用JavaScript制作一个购物清单程序,该程序有一个输入框和一个添加项目按钮。单击输入字段中的项目按钮文本作为列表项添加到无序列表中。列表项还具有一个子图像图标,该图标包含双击功能并从列表中删除该项。单击列表项会更改背景颜色,使其标记为完成。我面临的问题是列表项的文本在左上角对齐了一点,而图像正确对齐。图像和列表项分别具有浮点数、右浮动和左浮动点数。只是想知道如何做到这一点?CSS,Javascript?完全不知道。请帮忙。
var input = document.getElementById('input');
var addButton = document.getElementById('add');
var list = document.getElementById('list');
addButton.onclick = CreateList;
function CreateList(){
var li = document.createElement('li');
li.textContent = input.value;
var image = document.createElement('img');
image.setAttribute('src',
'http://findicons.com/files/icons/1580/devine_icons_part_2/128/trash_recyclebin_empty_closed.png');
li.appendChild(image);
list.appendChild(li);
input.value = "";
image.ondblclick = function(){
list.removeChild(li);
};
li.onclick = function(){
li.style.background = '#84ac47';
};
}
.container
{
max-width: 600px;
width: 100%;
height: auto;
background-color: #dedede;
text-align: center;
font-family: Century Gothic;
}
.head {
padding: 15px;
}
.body {
background-color: #dedede;
}
h3 {
font-weigth: bold;
font-size: 22px;
padding: 10px 0;
}
input {
width: 240px;
font-size: 18px;
padding: 5px;
outline: none;
border: 0;
}
button {
font-size: 18px;
padding: 6px;
border: 0;
outline: none;
background-color: tomato;
color: #fff;
}
#list {
width: 335px;
list-style: none;
}
li {
float: left;
padding: 5px;
margin-left: 92px;
width: 324px;
text-align: left;
border-bottom: 1px solid #666;
margin-bottom: 10px;
}
img {
float: right;
padding: 8px;
width: 30px;
height: 30px;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<div class="container">
<div class="head">
<h3>Shopping Cart</h3>
<input type="text" id="input"><!--
--><button id="add">Add Item</button>
</div>
<div class="body">
<ul id="list">
</ul>
</div>
</div>
</body>
</html>
必须将属性行高添加到"li"元素样式中:
li {
float: left;
padding: 5px;
margin-left: 92px;
width: 324px;
text-align: left;
border-bottom: 1px solid #666;
margin-bottom: 10px;
/* like the image are 30px height + 16px padding, the line-height must be 46px */
line-height: 46px;
}
相关文章:
- 测试文本区域中的特定文本格式
- 防止Javascript注入(但保留文本格式和图像)
- 我有来自OpenWeatherMap API的风向数据,数据以0到360度表示.我想将其转换为文本格式
- 设置要显示的文本格式的指令
- IndexedDB:将 url 映射到接受的 markdown/HTML 文本格式标记的正确架构
- 时刻.js文本格式和类
- 在动态创建的文本框中设置文本格式
- 购物清单 Javascript 程序列表项的文本格式不正确
- 使用 drive.files.export (Drive API v3) + API 密钥以文本/纯文本格式获取公共 G
- 如何使用 jQuery 将段落的原始文本格式放入 HTML 段落元素中
- 如果文本格式化为 html,则使用 angularjs 显示更少/更多的文本
- 如何在打印时保留存储在数据库中的文本格式
- Google Apps脚本中Google文档中字符串的文本格式
- jQuery之后的文本格式问题
- 如何在jQuery中保持粘贴时的文本格式
- P:输入文本格式数字,如'999,999'
- 删除复制+粘贴的富文本格式?(跨浏览器)
- 在文本框中设置文本格式
- 如何在HTML textarea>中设置文本格式?
- 如何使用PHP在电子邮件中以HTML/文本格式发送Javascript