javascript - 如何将列表中的文本从一行换成另一行

标签 javascript jquery html css

我已经创建了这个购物 list 应用程序并且运行良好。我现在面临的唯一问题是将长字符串断开到下一行。我正在使用自动换行,但它不起作用。

所以当我输入一个很长的词时 (Helooooooooooooooooooooooooooooooooo) 等。我希望它能打断这个词并在下一行显示它,比如

(Helooooooooooooooo
oooooooooooooooooooo)

HTML:

<div id="container">
    <input id="add" type="text" placeholder="Type new item here"
            autocomplete="off" autofocus/>
    <ul id="item_list">
        <li id="base" class="hidden">
            <input class="check" type="checkbox"> <span class="item">Item</span>
            <button class="delete_item hidden"></button>
        </li>
    </ul>
</div>

CSS:

.item {
  font-size: 15px;
  /* width: 50%; */
  color: #000;
  margin: 8px 0 0 20px;
  word-wrap: break-word;
  word-break: break-word;
  overflow: hidden;
}

请在这个 JS Fiddle - http://jsfiddle.net/varunksaini/Zjxq5/10/ 中检查完整的工作代码

最佳答案

我假设问题出在 .item 元素而不是 input 字段。

您需要按如下方式修改您的 CSS:

#item_list li {
  list-style: none;
  border-bottom: 1px dotted #ccc;
  xxoverflow: hidden;
  xxwhite-space: nowrap;
  text-overflow: ellipsis;
  padding: 10px 5px 10px 50px;
  text-transform: capitalize;
  xxword-wrap: break-word;
}

.check {  /* DO NOT float .item... */
  float: left;
  margin-left: -30px;
}

.item {
  font-size: 15px;
  /* width: 50%; */
  color: #000;
  margin: 8px 50px 0 20px; /* add right margin to allow for delete button */
  word-break: break-all;
  display: inline-block;
  text-align: left;
}

参见演示:http://jsfiddle.net/audetwebdesign/hpa87/

结果如下:

enter image description here

#item_list li中,移除overflowwhite-spaceword-wrap规则,这些都不需要。

不要 float .item

对于.item,设置display: inline-block(block也可以),设置word-break: break- all 以处理长单词,并设置 text-align: left(覆盖较早的导致文本居中对齐的 CSS 规则)。

注意:如果您不希望删除按钮 float 在任何描述文本上,请向 .item 添加一些右填充或一些右边距。

关于javascript - 如何将列表中的文本从一行换成另一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19180435/

相关文章:

javascript - JQuery 使用 $.ajax() 访问远程站点

javascript - 如何从 javascript 图表触发 ajax

javascript - 单击按钮打开带有闪烁光标的输入字段

javascript - 使用javascript的幻灯片动画

javascript - Wordpress 中的内联 Javascript

javascript - font-awesome 图标不会转换转换 :rotate(180deg)

javascript - conn.query结果的访问ID

javascript - 单击 Angular 删除按钮时页面未刷新

Javascript - new Date() 在 Android 7.0 设备上返回错误的时区

php - 在 AJAX 查询中返回 PHP 响应