相关疑难解决方法(0)

使用CSS切换块元素的顺序

短篇故事

假设我的HTML已经完成了:

<div id="blockA">Block A</div>
<div id="blockB">Block B</div>
<div id="blockC">Block C</div>
Run Code Online (Sandbox Code Playgroud)

它看起来像这样:

------------
| Block A  |
------------
| Block B  |
------------
| Block C  |
------------
Run Code Online (Sandbox Code Playgroud)

现在我想切换块的顺序.我怎么能只用CSS做到这一点?

------------
| Block C  |
------------
| Block A  |
------------
| Block B  |
------------
Run Code Online (Sandbox Code Playgroud)

我知道有一些hacky解决方案,比如使用position:absolute,但这并不能保持对该display:block属性的有效使用.也就是说,当块体尺寸增大时,块会向下推动其他块.

很长的故事

当用户使用计算机查看我的网页时,这些块按以下顺序显示:

  1. 基本信息.
  2. 活动安排.
  3. iPhone应用广告

iPhone应用程序广告是最后放置的,因为它对计算机用户来说并不是非常重要.一小部分计算机用户将拨打电话并安装应用程序.

如果移动用户访问此站点,则iPhone应用程序广告应该是页面上最重要的事情.因此,它应该移到顶部:

  1. iPhone应用广告
  2. 基本信息.
  3. 活动安排.

我希望iPhone和计算机用户共享相同的HTML,但有一个CSS媒体查询切换块的顺序.

@media only screen and (max-device-width: 480px) {
   #blockC {
      /* magic order switching */
   }
}
Run Code Online (Sandbox Code Playgroud)

html css

116
推荐指数
5
解决办法
13万
查看次数

标签 统计

css ×1

html ×1