2017-08-11 112 views
0

需要修复textarea到可滚动div的底部,但没有textarea泄露出div,就像我试图修复position: fixed时一样它到底部。如何修复textarea到滚动div内的屏幕底部

如果您有一个滚动文本集的网格布局,您如何设置底部的文本区域。我尝试过position: fixed;,它延伸了整个屏幕的宽度。我需要textarea直接适合左侧div。当我在滚动文本div中使用position: relative并在textarea中使用position: absolute;时,它将textarea放在屏幕的底部,但当我滚动时它不会停留在那里。

这是我目前有: https://codepen.io/anon/pen/QMMjow

这就是我想要的,但有其固定在底部像上面: https://codepen.io/anon/pen/OjjMVK

回答

0

你可以做到这一点通过增加与textarea的另一个元素并行并使textarea到第一个div的底部。

.messages{ 
 
    width: 300px; 
 
    height: 300px; 
 
    box-sizing: border-box; 
 
    border: 2px solid #ccc; 
 
    position: relative; 
 
    overflow: hidden; 
 
    padding-bottom: 50px; 
 
} 
 
.message{ 
 
    width: 100%; 
 
    height: 100%; 
 
    overflow: auto; 
 
} 
 
.textarea{ 
 
    width: 100%; 
 
    height: 50px; 
 
    position: absolute; 
 
    bottom: 0; left: 0; 
 
    resize: none; 
 
    background: red; 
 
}
<div class="messages"> 
 
    <div class="message"> 
 
    <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> 
 
    </div> 
 
    <div class="textarea"></div> 
 
</div>

0

您可以使用在textarea“粘性躯”的方法,以在底部始终保持,而不管内容的大小。本品采用阴性切缘上的内容包装:

body { 
 
    background: #fafafa; 
 
} 
 

 
.mdl-grid { 
 
    padding: 0!important; 
 
    margin-bottom: -25px !important; 
 
} 
 

 
.messages { 
 
    position: relative; 
 
} 
 

 
.mdl-cell { 
 
    overflow-x: hidden; 
 
    overflow: auto; 
 
    min-height:93vh; 
 
    background: #bdbdbd; 
 
    padding: 0!important; 
 
    text-align: center; 
 
    color: #424242; 
 
    font-weight: bold; 
 
} 
 

 
textarea { 
 
    position: absolute; 
 
    bottom: 0; 
 
    left: 0; 
 
    width: 98%; 
 
    height: 25px; 
 
}
<html> 
 
    <head> 
 
    <!-- Material Design Lite --> 
 
    <script src="https://storage.googleapis.com/code.getmdl.io/1.0.0/material.min.js"></script> 
 
    <link rel="stylesheet" href="https://storage.googleapis.com/code.getmdl.io/1.0.0/material.indigo-pink.min.css"> 
 
    <!-- Material Design icon font --> 
 
    <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"> 
 
    </head> 
 
    <body> 
 
    <div class="mdl-grid"> 
 
     <div class="messages mdl-cell mdl-cell--4-col">4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4<br>4< 
 
     <textarea></textarea> 
 
     </div> 
 
     <div class="mdl-cell mdl-cell--8-col">8</div> 
 
    </div> 
 
    </body> 
 
</html>