2014-01-22 29 views
0

我想達到如下效果:需要設置內嵌樣式=「WIDTH:window.innerWidth」

<div id='leftSide' style="width: window.innerWidth"> AS WIDE AS CLIENT WINDOW </div> 

我不認爲這是可能爲上面的代碼。原因是,「window.innerWidth」是一個Javascript屬性的窗口對象 - 我看不到如何在我的內聯CSS中使用該值。

此外,我避免'onLoad()'處理程序。我知道我可以添加一個onLoad()處理函數來處理頁面正文標記中的頁面加載,然後使用所有javascript來設置寬度。但我不喜歡在我的頁面中使用onload處理程序。

那麼有沒有一些方式來訪問我的內聯CSS在這裏的'window.innerWidth'值?

+0

如果元素是跨越整個窗口寬度的元素的子元素(例如body),則可以使用'width:100%'。這不行嗎? – Zhihao

+0

我在這裏的問題div是一個最外面的div - 它有兩個嵌套div,一個左邊和一個右邊,兩個嵌套div的內嵌塊樣式,所以它們並排。我在兩個嵌套div上使用了百分比寬度,發現包含div *必須有一個像「1200px」這樣的硬編碼的難題 - 如果包含最外層div的寬度爲** 100%**,內部divs - 每個寬度= 49% - 現在是100%的49%(但是100%是什麼?沒什麼,所以寬度的49%= 100%是內部div的寬度= 0。我需要一個真正的數字在這個最外面的div上 – CFHcoder

+0

'''''''''嵌套塊的樣式在兩個嵌套的div'上,默認情況下內聯塊元素之間有一個空格,這也許是爲什麼它是中斷的。嵌套元素,因爲這將刪除它們之間的默認間隔 –

回答

5

只需使用100vw寬度:

style="width:100vw"

vw裝置相對於視口寬度。擔心瀏覽器兼容性?改爲使用100%。但使用vw更好,以防它在一個小容器中。

+0

我以前從未見過「vw」。這解決了我的問題。 Jeez,謝謝 - 我希望有一個簡單的答案。 – CFHcoder

+0

@CFHcoder如果答案回答你的問題,你能接受答案(點擊選中標記)嗎? – Markasoftware

0

你試過用這樣的東西嗎?

<script> 
document.getElementById("leftSide").style.width=window.innerWidth; 
</script> 
+0

是的,您在上面指出的腳本標記語法 - 在inline'd **「style = width:」內不起作用**在div內使用的CSS語句。 – CFHcoder

+0

@CFHcoder對不起,這只是爲了獲得靈感;)我編輯了代碼,你對此有何看法? – Makromat

+0

你真的需要jQuery嗎? – Pavlo