- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在用户设备的方向发生变化后根据这些 div 内调整大小的元素的大小来更改一些 div 元素的高度。基本上它是图像和文章标题的响应式列表。页面首次加载时高度是正确的,但我在方向更改时抓取的高度不正确。过去一天我一直在为此苦苦挣扎。任何想法将不胜感激。
html
<div id="mn_category_list_container">
<div class="mn_category_post mn_post_1" style="height: 283px;">
<li>
<a href="#" class="ui-link" data-ajax="false">
<img class="mn_img" src="http://baconmockup.com//144/128">
<h2>Title 1</h2>
</a>
</li>
</div>
<div class="mn_category_post mn_post_2 right_post" style="height: 283px;">
<li>
<a href="#" class="ui-link" data-ajax="false">
<img class="mn_img" src="http://baconmockup.com//144/128">
<h2>Title 2</h2>
</a>
</li>
</div>
<div class="mn_category_post mn_post_3" style="height: 283px;">
<li>
<a href="#" class="ui-link" data-ajax="false">
<img class="mn_img" src="http://baconmockup.com//144/128">
<h2>Title 3</h2>
</a>
</li>
</div>
<div class="mn_category_post mn_post_4 right_post" style="height: 283px;">
<li>
<a href="#" class="ui-link" data-ajax="false">
<img class="mn_img" src="http://baconmockup.com//144/128">
<h2>Title 4</h2>
</a>
</li>
</div>
SCSS
#mn_category_list_container {
@include cf;
.mn_category_post {
float:left;
width: 48%;
margin-bottom: 23px;
li {
list-style-type: none;
a {
text-decoration: none;
img {
margin-bottom: 5px;
}
}
}
}
.right_post {
float: right;
width: 48%;
}
}
js(注意我使用的是 jQuery mobile,我必须禁用其中的一些东西,例如我没有使用的 ajax 链接,所以我将其放在此处的代码中,不太相关)
var MN = MN || {};
(function($) {
// MOBILE SPECIFIC FUNCTIONS
MN.MOBILE = {
// Assigns heights to lis so rows (2 posts per) are even heights
catPostHeighterer: function() {
elementHeights = $('.mn_category_post li').map(function() {
return $(this).outerHeight();
}).get();
maxHeight_row1 = Math.max(elementHeights.slice(0,1), elementHeights.slice(1,2));
maxHeight_row2 = Math.max(elementHeights.slice(2,3), elementHeights.slice(3,4));
$('.mn_post_1, .mn_post_2').css('height', maxHeight_row1);
$('.mn_post_3, .mn_post_4').css('height', maxHeight_row2);
},
imageResizerer: function() {
viewport = updateViewportDimensions();
img_width = $('.mn_category_post').width(); // width based on the width of is css class, which is defined in code as % of window width
img_height = Math.round(img_width * .89); // ratio of width to height based on designs
$(".mn_img").attr('src', "http://baconmockup.com//" + img_width + "/" + img_height);
},
init: function() {
MN.MOBILE.imageResizerer();
$(window).load(function() {
MN.MOBILE.catPostHeighterer();
});
$(window).on("orientationchange",function(){
MN.MOBILE.imageResizerer();
MN.MOBILE.catPostHeighterer();
});
// disable jQuery Mobile's ajax stuff
$('a').attr('data-ajax','false');
$(document).bind("mobileinit", function(){
//apply overrides here
$.mobile.loadingMessage = false;
});
}
}
})(jQuery);
jQuery(document).ready(function($) {
if (viewport.width <= 783) {
MN.MOBILE.init();
}
});
我已经尝试过的事情 - 在我的js中使用outerHeight()而不是height(),在图像调整大小和类别高度调整大小上设置超时。获取列表项 (mn_category_post) 的包含 div 并调整其大小。使用调整大小而不是方向更改。根本没有使用jquery。我没主意了。先感谢您!
最佳答案
好吧,我想我的问题对于互联网来说太难了。我最终只是编写了一个函数,可以计算窗口加载时纵向和横向模式下所需的所有值。然后,在方向改变时,我只会获取这些值,而不是在变化的 DOM 上重新计算它们。回答我自己的问题我能得到什么?
--编辑--另外,我必须更改 onorientationchange 来调整大小。不知道为什么现在有效。如果您想查看我的新代码,请发布,我将发布它。
关于div 的 jQuery height() 在方向更改时不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28094962/
这个问题在这里已经有了答案: How can I vertically align elements in a div? (28 个答案) Vertical Aligned Text and Im
我想做一个像 view0.height = view1.height + view2.height 这样的约束。当 view1.height 或 view2.height 改变时,view0.heig
有人可以解释为什么这个标记: 呈现大约 2x18 的 float div(在 Chrome/Firefox 中)而不是 2x2 div? 即使所有空格都被删除,图像似乎也遵循 font-
我的 HTML 页面上有一些可拉伸(stretch)的元素。 使用这个 CSS .stretchable-element { height: 25%; } 随着浏览器窗口高度的增加,可伸缩元素
我在“developer.android.com”上查看以缩小我的位图文件,但我发现了一件事我不明白。所以我很感激你能给我一点帮助。 这是一个 snippet来自 developer.android.
假设我们有以下设置: .container { background-color: red; width: 500px; min-height: 300px; } .child { b
我遇到了高度错误的问题 $(window).height(); 也有类似的问题 here 就我而言,当我尝试时 $(document).height(); 它似乎返回了正确的结果 窗口高度返回320
我正在尝试使用 javaFX (2.2) 开发桌面应用程序,但我遇到了一些困难,无法真正让它按照我希望的方式运行。作为该框架的新用户,我可能没有按应有的方式使用它... 我想要的是一种仪表板,在 Sc
就这么简单:) 我右边的列动态变化,由于左列的高度设置为 100%,我认为根据 Right_Column 的高度动态修改容器的高度会很好。有小费吗?谢谢:) 最佳答案 如果我正确理解了问题,你可以做这
我有一个 ScrollView(包含 NSTextEditor),其顶部、左侧和右侧约束相对于其容器(主窗口)正确设置为 0。 我无法使其高度为主容器的一半。有什么帮助吗? 最佳答案 如果我理解正确,
这个问题之前曾被问过(Infinite Scroll on Mobile browsers),但没有得到回应。 我正在尝试实现无限滚动。 检查文档是否在底部,导致更多加载的函数是: if ($(win
这个问题在这里已经有了答案: height:100% VS min-height:100% (4 个答案) 关闭 6 年前。
我在尝试解决这个问题时遇到了一些问题。我已经编写了一个 jquery 函数来检测用户何时点击页面底部并触发一个函数。现在,虽然这适用于最常见的屏幕尺寸,但当用户的屏幕太大以至于可以一次看到整个页面时,
如何获得与导航高度(填充)相同的导航高度 ...!? nav { width: 100%; } nav ul { text-align: center; background-
所以,实际上我可能完全想多了,应该放弃最小高度,但我目前有以下 HTML:
我正在阅读 Bootsrap3 文档。我发现这段页脚代码粘在屏幕底部。 html, body { height: 100%; } #wrap { min-height: 100%; height: a
我对容器 div 的高度有疑问。我想 它是 body 的 100%,但不起作用。我添加了 css body height=100% var d = document; $(d).ready(funct
我有一个三部分布局:页眉、内容和页脚。我非常熟悉绝对定位技术;当我希望内容 div 扩展到可用高度的 100% 时,我经常使用它。 在这种情况下,我的问题是我事先不知道页脚的高度,它是根据自己的内容动
在下面的代码中,我尝试实现无限滚动。我遇到的问题是“document.height”和“window.height”返回相同的值。有人可以帮我解决我哪里出错了吗?
我有一个页面布局,其中两个 div 在一行中彼此相邻对齐。一列包含可变长度的文本,第二列包含图像。 标记基本上如下: texttext 我的
我是一名优秀的程序员,十分优秀!