javascript - v-show 能够隐藏但不能显示
问题描述
在试v-show属性,当设为false的时候会添加行内样式display:none,
但是设置true的时候,不会添加display:block;求解。。。
<!DOCTYPE html><html lang='en'><head> <title></title> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1'> <style>p { width: 400px; height: 400px; border: 1px solid #000; display: none;} </style></head><body> <p v-show='true'></p> <script type='text/javascript' src='https://www.haobala.com/wenda/vue.js'></script> <script>new Vue({ el: '#vue', }) </script></body></html>
问题解答
回答1:你把样式里的display:none 去掉。。。。v-show 本身就可以设置显示和隐藏的。
回答2:因为你css代码里面
display:none
v-show只会在hide的时候添加
display:none;
而显示的时候会去除
display:none;
不会添加
display:block;回答3:
v-show的原理是通过是否添加display:none控制显隐的,跟传统意义jquery的hide和show不同。
回答4:设置为true时不需要是 display:block 同样也是能显示的
回答5:看源码里
你这问的有问题v-show本来就是控制显示跟隐藏的给它一个值 控制显示跟隐藏不就好了
<ul v-show='show'><li @click='change($event)'>哈哈哈</li><li @click='change($event)'>啦啦啦</li><li @click='change($event)'>嘻嘻嘻</li> </ul>
data(){ return{ items:[’1111’,’2222’,’3333’],show:true }},回答7:
display是根据你的便签属性来的,如果是块级元素如p,p,h标签,默认的就是display: block;如果是span等默认就是display:inline。所以隐藏的时候就是display:none,显示的时候去掉display:none就是它的默认属性
相关文章:
1. javascript - webpack 多入口文件生成HTML文件;2. dockerfile - [docker build image失败- npm install]3. docker gitlab 如何git clone?4. docker安装后出现Cannot connect to the Docker daemon.5. nignx - docker内nginx 80端口被占用6. 计算机 - 我学习了C语言,数据结构和一点点java基础,想自学C++,请问买什么入门书籍好?7. node.js - mongoDB使用$gte的问题8. java中关于直接插入排序遇到的问题。9. docker绑定了nginx端口 外部访问不到10. javascript - npm run build后调用api返回index.html
