热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CSS/CSS3切换元素的位置-CSS/CSS3toswitchpositionsofelements

Ihave4columnsindesktopviewforHTML.Whenweswitchtomobileview,weshow2columnsand2ro

I have 4 columns in desktop view for HTML. When we switch to mobile view, we show 2 columns and 2 rows (Please see attached image for reference).

我在桌面视图中有4列HTML。当我们切换到移动视图时,我们显示2列和2行(请参阅附图中以供参考)。

The code is:

代码是:

Column 1
Column 2
Column 3
Column 4

The view I get in mobile version is:

我在移动版中获得的视图是:

View I get in mobile version

I want following view:

我想要以下观点:

View required

Basically, I want to show #1 and #2 in First column in left side. And #3 and #4 in second column on right side.

基本上,我想在左侧的第一列中显示#1和#2。右侧第二列中的#3和#4。

I am using float: right property in css. I want to handle this by NOT moving the elements in HTML.

我在CSS中使用float:right属性。我想通过不移动HTML中的元素来处理这个问题。

Thanks for your help.

谢谢你的帮助。

2 个解决方案

#1


5  

If using CSS Flexible Box Layout is an option, you could simply achieve that by ordering the flex items on mobile screens (via @media queries):

如果使用CSS Flexible Box Layout是一个选项,您可以通过在移动屏幕上订购flex项目来实现这一点(通过@media查询):

Example Here

.sections { display: flex; flex-wrap: wrap; }

.one-fourth-col {
  flex: 1;
  margin: 0 1%;
}

@media (max-width: 767px) {
  .one-fourth-col {
    flex: 1 48%; /* Actually it should be 50%
                    but there's a margin of 1%
                    around the columns, hence 50%-2(1%) = 48% */
  }

  .sections > :nth-child(1) { order: 1; }
  .sections > :nth-child(2) { order: 3; }
  .sections > :nth-child(3) { order: 2; }
  .sections > :nth-child(4) { order: 4; }
}

(vendor prefixes omitted due to brevity)

(由于简洁,省略了供应商前缀)

For vendor prefixes click on "Toggle Compiled View" in the demo (Thanks to Autoprefixer).

对于供应商前缀,请单击演示中的“Toggle Compiled View”(感谢Autoprefixer)。

At last but not least, if you're not familiar with CSS Flexible Box Layout you could refer to the following resources:

最后但同样重要的是,如果您不熟悉CSS Flexible Box Layout,可以参考以下资源:

  • http://dev.w3.org/csswg/css-flexbox (The spec is your friend!)
  • http://dev.w3.org/csswg/css-flexbox(规格是你的朋友!)

  • https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Flexible_boxes
  • http://www.html5rocks.com/en/tutorials/flexbox/quick/
  • http://css-tricks.com/snippets/css/a-guide-to-flexbox/
  • http://weblog.bocoup.com/dive-into-flexbox/

#2


3  

You could do it by css transform and @media queries: - not very elegant but works just fine.

你可以通过css transform和@media查询来做到这一点: - 不是很优雅,但工作得很好。

JSFiddle - DEMO or Full Screen

JSFiddle - DEMO或全屏

HTML:

Column 1
Column 2
Column 3
Column 4

CSS:

body {
    margin: 0px;
}
.sections {
    margin-top: 50px;
}
.one-fourth-col {
    width: 20%;
    margin: 2.5%;
    padding: 25px 0px;
    text-align: center;
    float: left;
}
@media (max-width: 767px) {
    .one-fourth-col {
        float: none;
        width: 40%;
        margin-right: 0px;
        margin-bottom: 0px;
    }
    .transform {
        -webkit-transform: translate(100%, -200%);
        -moz-transform: translate(100%, -200%);
        -ms-transform: translate(100%, -200%);
        -o-transform: translate(100%, -200%);
        transform: translate(100%, -200%);

        margin-left: 15%; /* 3 X Value of div-1 and div-2 margin-left */
    }
    .div-1 {
        margin-left: 5%;
    }
    .div-2 {
        margin-left: 5%;
        margin-top: 50px; /* margin between rows */
    }
    .div-3 {
        margin-top: -50px; /* negative value of .div-2 margin-top */
    }
    .div-4 {
        margin-top: 50px; /* same value of .div-2 margin-top */
    }
}

MORE INFO - CSS Transforms:

更多信息 - CSS转换:

  • http://www.w3.org/TR/css3-transforms/

  • https://developer.mozilla.org/en-US/docs/Web/CSS/transform


推荐阅读
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 本文详细介绍了Android中的坐标系以及与View相关的方法。首先介绍了Android坐标系和视图坐标系的概念,并通过图示进行了解释。接着提到了View的大小可以超过手机屏幕,并且只有在手机屏幕内才能看到。最后,作者表示将在后续文章中继续探讨与View相关的内容。 ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • 本文介绍了一款名为TimeSelector的Android日期时间选择器,采用了Material Design风格,可以在Android Studio中通过gradle添加依赖来使用,也可以在Eclipse中下载源码使用。文章详细介绍了TimeSelector的构造方法和参数说明,以及如何使用回调函数来处理选取时间后的操作。同时还提供了示例代码和可选的起始时间和结束时间设置。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • Android开发实现的计时器功能示例
    本文分享了Android开发实现的计时器功能示例,包括效果图、布局和按钮的使用。通过使用Chronometer控件,可以实现计时器功能。该示例适用于Android平台,供开发者参考。 ... [详细]
author-avatar
手机用户2602918323
这个家伙很懒,什么也没留下!
Tags | 热门标签
RankList | 热门文章
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有