我正在嘗試創建我的第一個RWD網站,但現在我已經開始編寫移動CSS了,我認爲它正確的時間詢問我的標題是否是正確的方式。JQuery - 響應式設計(顯示)
爲了讓窗口加載特定的.css文件(根據屏幕寬度桌面/平板電腦/手機),我在html中寫入了所需的所有媒體。
桌面和平板電腦在設計上非常相似。只有幾個div重排,它看起來不錯。但是當談到移動時,我想改變導航儀的外觀。 例如在桌面的內聯塊中居中屏幕。 但是在移動設備上,我想要一種新的設計,一個dropmenu可以說。
所以我雖然在html中創建了兩個導航器,並且在JQuery中編寫了一個代碼來檢查window.width。如果寬度將小於平板電腦window.width(這將是500px),然後添加display:none;到桌面導航器並刪除顯示:無;從移動導航器。
Q1: 這是正確的做法嗎?在html中編碼div並使用JQ window.width添加/刪除顯示?或者,還有更好的方法?我試圖谷歌這個問題,但我無法找到一個直接的答案。
Q2: 這是我的JQ代碼。雖然由於某種原因它不起作用,我是否在正確的道路上?
checkWidth();
$(window).resize(checkWidth);
var $window = $(window);
function checkWidth() {
var windowsize = $window.width();
if (windowsize < 500) {
alert("works");
// $(".mobHome").removeClass("noShow");
} else {
$(".mobHome").addClass("noShow");
}
}
這不是最好的方法。你應該在CSS的'@ media'查詢中處理它。所以實際上你應該使用JS來進行事件遍歷或者動畫,這些事情通常不會僅僅通過CSS來實現。除此之外的任何內容都應該由CSS定義。你不希望瀏覽器顯示一個元素,並且一旦JS解析文檔使其消失或者做任何其他核心內容。相反,隱藏 - 在CSS中顯示元素是即時的 - 用戶不會遭受奇怪的代碼行爲。 –
我明白了。我不知道該怎麼做。但我猜它是在這兩行之間:[code]'@media \t只有屏幕和(-webkit-min-device-pixel-ratio:2), \t只有屏幕和(min-moz-device-pixel- (最小裝置像素比率:2), (僅最小裝置像素比率:2/1),僅屏幕和(( - 最小裝置 - 像素比率:2/1),)最小分辨率:192dpi), \t只有屏幕和(最小分辨率:2dppx) { \t的#header { \t \t背景圖像:網址(../images/banner_medium_2x.jpg); \t \t \t } \t \t 的#header a.logo { \t \t \t 背景\t圖像:網址(../圖像/ logo_medium_2x.png); \t \t \t \t } }'[/代碼] – Metalbreath