【问题标题】:How to force reload of page without redownloading content from server (only force CSS recalculation)?如何在不从服务器重新下载内容的情况下强制重新加载页面(仅强制 CSS 重新计算)?
【发布时间】:2017-04-27 01:37:12
【问题描述】:

我的网页有一些 CSS 问题...事实上,每次用户调整窗口大小时,由于某种原因,一切都会变得一团糟。

由于某种原因,所有浏览器(Chrome、Firefox 和 IE)在调整浏览器窗口大小后都不会重新计算 CSS(或无法正确重新计算)。

每次用户调整浏览器窗口的大小时,我可以强制重新加载页面(我的意思是 CSS 重新计算)吗?但是,我不想每次都从服务器重新提供内容。

谢谢大家!

【问题讨论】:

  • 尝试找出根本问题可能会更好。我不确定我理解您所说的浏览器在调整大小后不重新计算 CSS 是什么意思 - 您在页面加载时是否有很多 JS 应用的样式?
  • 您确实需要提供一个显示此行为的代码示例。您是否在某个地方的 javascript 中以像素为单位明确设置宽度?
  • @EdmundReed 我知道,但我正在寻找快速解决方案...我认为问题是因为我有一个标题,其中 3 个部分都有不同的 CSS 过渡跨度>
  • 将媒体查询添加到您的 CSS 并为您需要的每种情况/浏览器大小设置各种 CSS 选择器/属性的正确值。
  • @Derek 正是我所做的!而且它不能正确重新计算!

标签: javascript jquery css


【解决方案1】:

根据您的描述,当用户调整窗口大小时,您需要重新计算具体损坏的css。

对于 jQuery,你可以这样做

$(window).resize(function() {
  $('.someEle').css('width', $(window).width()/2)
})

对于原版 javascript:

window.onresize = function() {
  // do sth here
}

无论哪种方式,您都必须明确知道您的 css 发生故障的位置和原因,以及如何在调整大小处理程序中修复它们。

感谢阅读。

【讨论】:

  • 我的意思是,当用户调整窗口大小时,我想重新计算整个页面
  • @Emilio 也许你可以参考这个,但我认为这不是一个好习惯。 stackoverflow.com/questions/13721183/…
猜你喜欢
  • 1970-01-01
  • 2016-02-11
  • 2012-02-23
  • 2014-03-09
  • 2018-10-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多