我認為使用媒體查詢而不針對特定設備是安全可靠的做法。特別要指出的是,不應該贊成專門針對 iPad 或黑莓手機設計媒體查詢。媒體查詢應該關注屏幕尺寸,直到當前設計遇到阻斷而將所有工作過繼給下一個媒體查詢。
與之相同的觀點是,斷點不應該用設備來命名,而應使用更通用的方式。特別是,現在有一些手機比平板更大,而有一些平板比電腦更大……
~~~
// Yep
$breakpoints: (
'medium': (min-width: 800px),
'large': (min-width: 1000px),
'huge': (min-width: 1200px),
);
// Nope
$breakpoints: (
'tablet': (min-width: 800px),
'computer': (min-width: 1000px),
'tv': (min-width: 1200px),
);
~~~
就此來說,任何不與特定設備關聯而表達清晰的命名約定,都會因其廣泛的通用性獲得認可。
~~~
$breakpoints: (
'seed': (min-width: 800px),
'sprout': (min-width: 1000px),
'plant': (min-width: 1200px),
);
~~~
上面的示例使用了嵌套的 map,但這并不是強制或絕對的,你完全可以使用字符串來代替(比如?`'(min-width: 800px)'`)。
## 擴展閱讀
* [Naming Media Queries](http://css-tricks.com/naming-media-queries/)
- 關于作者
- 貢獻
- 關于Sass
- Ruby Sass Or LibSass
- Sass Or SCSS
- 其他預編譯器
- 簡介
- 為什么需要一個樣式指南
- 免責聲明
- 核心原則
- 語法格式
- 字符串
- 數字
- 顏色
- 列表
- Maps
- CSS規則集
- 聲明順序
- 選擇器嵌套
- 命名約定
- 常量
- 命名空間
- 注釋
- 標示注釋
- 文檔
- 結構
- 組件
- 7-1模式
- Shame文件
- 響應式設計和斷點
- 命名斷點
- 斷點管理器
- 媒體查詢用法
- 變量
- 作用域
- !default標識符
- !global標識符
- 多變量或maps
- 擴展
- 混合宏
- 基礎
- 參數列表
- 混合宏和瀏覽器前綴
- 條件語句
- 循環
- Each
- For
- While
- 警告和錯誤
- 警告
- 錯誤
- 工具
- Compass
- 柵格系統
- SCSS-Lint
- 總結概要