javascript - 为动态出现的文本保留空间

标签 javascript css vue.js

我有一些有条件地显示的文本。 显示文本时,它会下推页面的其余部分。

保留文本空间的正确方法是什么,即使它没有显示以避免下推?

我想避免使用绝对位置并为容器提供预先固定的高度。

附上片段。 只需单击按钮,就会看到绿色框被推送。

new Vue({
  el: "#app",
  data: {
    message: "hello",
    push:false
  }
});
button{
  display:block;
}
#push-down{
  height:100px;
  width:100px;
  background-color:green;
}

p{
  font-size:30px;
  margin:0;
}
<script src="https://unpkg.com/vue"></script>
<div id="app">
  <button @click="push=!push">click me to push</button>
  <p v-show="push">{{message}}</p>
  <div id="push-down"></div>
</div>

最佳答案

您可以通过在元素上设置 CSS 属性 visibility 来实现您想要的效果。

将此属性设置为hidden 将从 View 中隐藏该元素,同时保持它在可见时使用的空间。您可以通过将 visibility 设置为 visible 使其可见 Check out the MDN docs here .

关于javascript - 为动态出现的文本保留空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44191676/

相关文章:

css - 具有绝对子项的多个 div 的自动高度?

javascript - 如何使用 v-bind 将类切换到 VueJs 中的此项

amazon-web-services - AWS Cognito 托管 UI 和 Amplify Auth 与授权代码 OAuth 流

amazon-web-services - Aws Lambda 显示进度

javascript - 选择单选时 jQuery 更改字段

javascript - 访问不在作用域内的函数

javascript - 在我的 html 文件中需要 React 组件

css - 复制此 CSS 格式

html - 如何去除div周围的蓝色边框

javascript - 基于属性的javascript克隆对象