我有一个div
正在填充using .text()
方法但是当我输入一个长文本条目时,div的高度没有响应,文本溢出{{1} }。
我有一个div
和一个按钮,当按下按钮时,文本区域的值被插入到div中。
textarea
HTML:
Height: auto;
display: inline-block;
overflow: visible/auto; etc
CSS:
<body>
<div data-role="page" id="article1">
<div data-role="header" data-theme="a" data-position="fixed">
<h1>Notes</h1>
</div>
<div data-role="content">
<div id="addContainer">
<button id="addNoteBtn" data-role="button">Add Note</button>
<textarea id="noteInput" class="textarea" rows="10" cols="50"></textarea>
<button id="savenotesbtn" data-role="button">Save</button>-->
</div>
<div id="displayContainer"></div>
</div>
</div>
</body>
JS:
#addContainer {
margin: 20px 20px 50px 20px;
}
#displayContainer {
margin: 20px 20px 20px 20px;
}
.noteDisplay {
display: inline-block;
color: white;
background-color: #96c56f;
width: 100%;
padding: 5px, 0px, 5px, 0px;
border: solid 2px black;
border-radius: 5px;
margin-bottom: 5px;
}
.textarea {
width: 100%;
height: 100%;
font: 1em arial;
color: rgba(50, 82, 50, 1.0);
}
.textarea:focus {
color: rgba(50, 82, 50, 1.0);
border: 2px solid #96c56f;
box-shadow: 0px 1px 1px #888888;
}
答案 0 :(得分:2)
尝试word-wrap: break-word;
获取css,这应该可以解决问题。
(提供html代码会很有用并且是溢出文本的图像)
您需要了解有关css溢出的所有内容,您可以在此处找到它:http://www.codelord.net/2013/08/23/css-tip-overflowing-with-text/。
$(document).ready(function () {
var savesnotesbtn = document.getElementById("savenotesbtn");
var addnotebtn = document.getElementById("addNoteBtn");
//var noteCount = localStorage.getItem("noteCount");
if (noteCount === null) {
var noteCount = 0;
}
addnotebtn.addEventListener("click", addNotes);
//ADD NOTES
function addNotes() {
noteCount++;
var note = $("#noteInput").val();
//console.log("Note: " + note);
//console.log("Note Count: " + noteCount);
var display = document.createElement("div");
document.getElementById("displayContainer").appendChild(display);
display.className = "noteDisplay";
display.id = "note" + noteCount;
$("#note" + noteCount).text(note);
//localStorage.setItem("noteCount", noteCount);
}
});
#addContainer {
margin: 20px 20px 50px 20px;
}
#displayContainer {
margin: 20px 20px 20px 20px;
}
.noteDisplay {
display: inline-block;
color: white;
background-color: #96c56f;
width: 100%;
padding: 5px, 0px, 5px, 0px;
border: solid 2px black;
border-radius: 5px;
margin-bottom: 5px;
word-wrap: break-word;
}
.textarea {
width: 100%;
height: 100%;
font: 1em arial;
color: rgba(50, 82, 50, 1.0);
}
.textarea:focus {
color: rgba(50, 82, 50, 1.0);
border: 2px solid #96c56f;
box-shadow: 0px 1px 1px #888888;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-role="page" id="article1">
<div data-role="header" data-theme="a" data-position="fixed">
<h1>Notes</h1>
</div>
<div data-role="content">
<div id="addContainer">
<button id="addNoteBtn" data-role="button">Add Note</button>
<textarea id="noteInput" class="textarea" rows="10" cols="50"></textarea>
<button id="savenotesbtn" data-role="button">Save</button>-->
</div>
<div id="displayContainer">
</div>
</div>
答案 1 :(得分:1)
基于来自OP的评论,说它溢出到div的右侧,如果将word-break: break-all
添加到noteDisplay
规则,它将正确地断行
.noteDisplay {
display: inline-block;
color: white;
background-color: #96c56f;
width: 100%;
padding: 5px, 0px, 5px, 0px;
border: solid 2px black;
border-radius: 5px;
margin-bottom: 5px;
word-break: break-all; /* added property */
}
关于break-all
和break-word
之间的差异,当使用中文,日文和韩文输入文字时,最好使用break-all
答案 2 :(得分:0)
word-wrap:break-word
将解决问题。
将此添加到您的
.noteDisplay{word-wrap:break-word}