我正在尝试使用媒体查询根据窗口的宽度更改块中元素的宽度(这允许我增加页面上的列数而不更改列的宽度).我希望能够使用em而不是像素来做到这一点,这样如果你改变字体大小,一切都会正确.但是,如果我使用以下内容:
html {
font-size: 12px; /* you could also use 75% if you want to be percent based.*/
}
@media screen and (min-width: 42em) {
div#page {
width: 42em;
}
}
Run Code Online (Sandbox Code Playgroud)
当窗口的最小宽度达到我的浏览器(Safari)的默认字体大小42*16px时,将触发媒体查询,而div#page的宽度将为42*12px,从html元素继承字体大小.我真的很想根据我正在使用的文本的宽度触发媒体查询,有没有办法让它工作?
我有一个本地部署系统,它镜像我们的生产系统。两者都是通过调用 kubectl apply -f deployments-and-services.yaml 进行部署
我使用当前的 git 哈希标记所有构建,这意味着对于到 GKE 的干净部署,所有服务都有一个新的 docker 镜像标签,这意味着 apply 将重新启动它们,但在本地 minikube 上,标签通常不会更改,这意味着新代码未运行。在我通过调用 kubectl delete 然后调用 kubectl create 来部署到 minikube 来解决这个问题之前,但随着我部署的服务数量的增加,这开始将开发周期拉得太长。
理想情况下,我想要一种更好的方法来告诉 kubectl apply 重新启动部署,而不是仅仅依赖于标签?
我很好奇人们是如何解决这个问题的。
此外,我正在使用 bazel 构建所有内容,这意味着我必须非常明确地设置构建命令。我想也许我应该切换到仅删除/创建我正在处理的一项服务,并让其他服务继续运行。
但在这种情况下,也许我应该只考虑远程呈现并在 minikube 之外一起运行我正在开发的服务?这里的最佳实践是什么?
该功能改编自网站:http://eriwen.com/javascript/measure-ems-for-layout/
function getEmSize(el) {
var tempDiv = document.createElement("div");
tempDiv.style.height = "1em";
el.appendChild(tempDiv);
var emSize = tempDiv.offsetHeight;
el.removeChild(tempDiv);
return emSize;
}
Run Code Online (Sandbox Code Playgroud)
我正在运行此函数作为window.resize上另一个函数的一部分,它导致Firefox 3.6上的性能问题在当前的Safari或Chrome上不存在.Firefox的分析师说我花了大部分时间在这个功能上,我很好奇为什么会这样.
有没有办法在不完成所有这些工作的情况下在javascript中获取em大小?我想在重新调整大小时重新计算用户更改它的大小.
bazel ×1
css ×1
css3 ×1
firefox ×1
html ×1
javascript ×1
kubernetes ×1
minikube ×1
performance ×1
viewport ×1