我正在尝试创建一个Twitter Bootstrap应用程序,它显示一个div,该div显示SPA中不同设备大小(台式机、平板电脑、移动设备)的应用程序,该应用程序具有需要通信的内部和外部功能。单击指定大小时,div应调整大小。如下所示:
引导断点基于窗口级别的媒体查询。但我正在尝试让它在div上工作。如果我们在div级别指定一个容器,网格的不会像调整窗口大小那样垂直堆叠,它们只是收缩。
比第一次听起来更难的问题。:(有什么关于如何解决这个问题的想法?
最简单的答案是iFrame,这样iFrame的窗口大小会随着div大小的改变和网格的正确堆叠而调整,但这并不理想,因为我们的SPA中存在从div外部和内部的功能。
我很高兴听到一个更好的解决方案来处理这个问题!
发布于 2015-04-17 11:54:57
Bootstrap只是CSS和一些用LESS和SASS编写的js,所以你可以修改Bootstrap文件的LESS/SASS版本,并用一个类名替换所有的媒体查询。LESS预处理器具有允许您嵌套CSS声明的语法,例如,以下LESS声明:
.mobile {
.foo { ... }
.bar { ... }
}
等同于CSS:
.mobile .foo { ... }
.mobile .bar { ... }
一旦你用CSS类替换了媒体查询,你就需要一些JavaScript来将这些类添加到元素中,这些元素的子元素需要有你想要伪造的媒体查询。
为了获得额外的可靠性,这样样式就不会泄漏到周围的页面,你可能想要使用作用域CSS,但是browser support for scoped CSS在这个阶段相当可怕。
发布于 2015-04-27 18:20:56
对于div,bootstrap有不同的列大小。.col-xs- .col-sm- .col-md- .col-lg- xSmall和Small、Medium和Large。这些是为您的div编写的类。
发布于 2015-04-17 11:23:20
您可以使用JQuery来实现这一点,或者您也可以使用knockout库来实现动态绑定,该库支持使用自定义绑定来实现这一点。下面是我将使用knockout绑定所做的工作
<div id="devices"> It can have bindings which can have the values desktop, tablet & mobile<div>
<div id="leftDiv">Some Code...<div>
<div id="mainDiv">View<div>
无论设备是什么{台式机、平板电脑、移动设备},我都会从带有设备的bindings
$("#mainDiv").css(应用你的css );
对于每种情况。使用css中的id="mainDiv“来应用你想要调整div大小的任何css。
https://stackoverflow.com/questions/29683077
复制相似问题