在我的 CSS 文件中,许多属性对两者都是通用的,但其他属性在使用 PC 和手机浏览网页时有所不同。我用@media screen and (max-width: X px)
这个——窄屏有一种行为,宽屏有另一种行为。我想到了各种解决方案:
两个单独的文件/部分
我可以将 CSS 分成两个文件,或者分成一个具有以下架构的文件:
@media screen and (max-width: X px) {
*whole CSS code for cellphones*
}
@media screen and (min-width: X+1 px) {
*whole CSS code for PCs*
}
这将意味着大部分代码的重复。
公共部分+特定部分
和上面类似,但是共同的部分在外面:
body {
*common code for body*
}
*common code for divs*
@media screen and (max-width: X px) {
body {
*cellphone-specific code for body*
}
*cellphone-specific code for divs*
}
@media screen and (min-width: X+1 px) {
body {
*PC-specific code for body*
}
*PC-specific code for divs*
}
这似乎很理想:更改特定宽度和高度等常量很方便(我将所有东西放在一起,没有在整个文件中追逐常量),如果我需要更改 X 常量甚至创建一些常量,它会更方便第三版(例如,用于平板电脑)。它只有一个小缺点:似乎不可能,或者至少在我尝试时它不起作用。
特定 div 中的所有内容
这是我实际使用的:
body {
*common code for body*
@media screen and (max-width: X px) {
*cellphone-specific code for body*
}
@media screen and (min-width: X+1 px) {
*PC-specific code for body*
}
}
我的问题是:什么是“最佳使用”解决方案?如果有一些困难,如何解决?