2012-10-07 98 views
0

我的HTML只是一個正文內的textarea。textarea佔用太多高度

我的JavaScript(用jQuery)是:

$(function() 
{ 
    $("body").height($(window).height()) 
}) 

我的CSS是:

textarea 
{ 
    width: 100%; 
    height: 100%; 
    resize: none; 
    background-color: red; 
    border: none; 
    padding: 0; 
} 
textarea:focus 
{ 
    outline: none; 
} 
body 
{ 
    background-color: #DBDBDB; 
    margin: 0; 
} 

誰能告訴我爲什麼有一個滾動條(textarea的是不是足夠小,適合內窗戶的高度)?

+0

爲什麼你需要的JS?我不明白你在那裏做什麼。嘗試在[jsfiddle](http://jsfiddle.net)設置示例 – elclanrs

+0

如果您在CSS中設置寬度並通過JS中的函數設置寬度,是不是有問題?我不確定... –

+0

因爲您正在將textarea高度屬性設置爲100%。爲什麼? – undefined

回答

-1

你看到一個滾動條的原因是因爲textarea仍然有餘量。要解決這個問題,請在textarea上設置一個0的邊距。

修訂CSS:

textarea 
{ 
    width: 100%; 
    height: 100%; 
    resize: none; 
    background-color: red; 
    border: none; 
    padding: 0; 
    margin: 0; 
} 
textarea:focus 
{ 
    outline: none; 
} 
body 
{ 
    background-color: #DBDBDB; 
    margin: 0; 
} 

編輯:

上面的代碼適用於瀏覽器沒有做 「獨特」 的修改內容。 Chrome顯然是增加了額外的高度。爲了解決這個問題,您需要爲元素添加負邊距(例如:margin:-2px 0)。此外,我的建議是隻有當Chrome瀏覽器(搜索如何執行此操作)時才添加負邊距。

+0

textarea在google chrome中已經沒有餘量了 - (沒有改變任何東西) – user1725888

+0

在Ubuntu的Firefox上爲我工作 – richardaday

+0

用編輯解釋瞭如何使用Chrome瀏覽器 – richardaday

-1

如果你有網頁是一個textarea,設置HIGHT身體和HTML標記

CSS:

html,body{ height:100%} 

DEMO: http://jsfiddle.net/SWLsH/1

編輯:textarea的高度的100%沒有按不考慮導致body滾動條的邊框。讓身高99%

0

這是因爲身體的行高財產..它設置爲0 ..

body 
{ 
    line-height: 0; 
} 

如果你不想這樣做,你可以設置文本區域height:99%;代替

Check FIDDLE

0

雖然不是最好的解決辦法,我剛申請的小動作,它的工作對顯示器的各種規模!

$(function() 
{ 
    var height = $(window).height() -5; 
    var width = $(window).width() - 5; 
    $('#someId').css('height', height); 
    $('#someId').css('width', width); 
}); 

CSS:

textarea 
    { 
     resize: none; 
     background-color: red; 
     border: none; 
     padding: 0; 
     margin: 0; 
     outline: none; 
    } 
    textarea:focus 
    { 
     outline: none; 
    } 
    body 
    { 
     background-color: #DBDBDB; 
     margin: 0; 
    }​ 

demo