[英]Div with margin-left and width:100% overflowing on the right side
我有2個嵌套的div應該是100%寬。 不幸的是,帶有Textbox的內部div溢出並且實際上比外部div大。 它有一個左邊距,溢出大約邊距的大小。
我該如何解決這個問題?
<div style="width:100%;">
<div style="margin-left:45px; width:100%;">
<asp:TextBox ID="txtTitle" runat="server" Width="100%"></asp:TextBox><br />
</div>
</div>
如果我不做100%,那么文本框不是100%寬。
div是塊元素,默認為100%寬。 您只需將textarea寬度設置為100%即可。
我意識到這是一個很老的帖子,但這可能會讓像我這樣的人從谷歌搜索來到這個頁面並且他們的智慧結束。
這里給出的其他答案都沒有給我工作,我已經放棄了希望,但今天我正在尋找解決另一個類似問題的解決方案,我在SO上找到了多次回答。 接受的答案適用於我的div,我突然想到嘗試使用我以前的文本框問題 - 它有效! 解決方案:
將box-sizing: border-box
到文本框的樣式。
要使用CSS將其添加到所有多行文本框,請將以下內容添加到樣式表中:
textarea
{
box-sizing: border-box;
}
感謝thirtydot提供的解決方案
和
<div style="width:100%;">
<div style="margin-left:45px;">
<asp:TextBox ID="txtTitle" runat="server" Width="100%"></asp:TextBox><br />
</div>
</div>
如果布局的某些其他部分影響div
寬度,則可以設置width:auto
和div
(這是一個塊元素)將填充空間
<div style="width:auto">
<div style="margin-left:45px;width:auto">
<asp:TextBox ID="txtTitle" runat="server" Width="100%"></asp:TextBox><br />
</div>
</div>
如果仍然無法正常工作,我們可能需要查看更多布局HTML / CSS
在頭部或外部文檔中添加一些css。 asp:TextBox呈現為輸入:
input {
width:100%;
}
你的HTML應該是這樣的: http : //jsfiddle.net/c5WXA/
請注意,這將影響您的所有文本框:如果您不想這樣,請為包含div的類提供一個類並指定css。
.divClass input {
width:100%;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.