как скрыть вертикальную полосу прокрутки, когда не требуется


у меня есть текстовая область, которая содержится в div, поскольку у меня есть подсказка jquery и я хотел использовать непрозрачность без изменения границы. Существует видимая вертикальная полоса прокрутки, как я только хочу, чтобы это отображалось, когда я набираю текстовое поле, и оно выходит за пределы контейнера. Я пробовал overflow: auto; но не работает.

текст:

<label>
    <div id="name">
        <textarea name="message" type="text" id="message"
            title="Enter Message Here"
            rows=9 cols=60 maxlength="2000"></textarea>
    </div>
</label>

стили:

#name { 
    border: 1px solid #c810ca;
    width: 270px;
    height:159px;
    overflow: hidden; 
    position: relative;
    }

#message {
    height: 400px;
    width: 235px;
    overflow: hidden;
    position: absolute;
}
3 73

3 ответа:

overflow: auto (или overflow-y: auto) - это правильный путь.

проблема в том, что ваша текстовая область выше, чем ваш div. Div заканчивается тем, что отрезает текстовое поле, поэтому, хотя похоже, что он должен начать прокрутку, когда текст выше, чем 159px он не начнет прокрутку, пока текст не будет выше, чем 400px это высота текстового поля.

попробуйте это:http://jsfiddle.net/G9rfq/1/

Я установил переполнение: авто в текстовом поле, и сделал текстовое поле того же размера, что и div.

также я не верю, что это действительно, чтобы иметь div внутри label браузер будет отображать его, но это может вызвать некоторые фанки вещи случиться. Также ваш div не закрыт.

overflow: auto; или overflow: hidden; должен сделать это, я думаю.

добавить этот класс .класс css

.scrol  { 
font: bold 14px Arial; 
border:1px solid black; 
width:100% ; 
color:#616D7E; 
height:20px; 
overflow:scroll; 
overflow-y:scroll;
overflow-x:hidden;
}

и использовать класс в div. как здесь.

<div> <p class = "scrol" id = "title">-</p></div>

у меня есть прикрепленное изображение , вы видите выход из приведенного выше кода enter image description here