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 - vue生成一维码?求助!!!!!急2. javascript - 关于Js中 this的一道题3. javascript - H5页面怎么查看console信息?4. 网页爬虫 - Python:爬虫的中文编码问题?5. ubuntu 远程管理KVM设置问题6. 关docker hub上有些镜像的tag被标记““This image has vulnerabilities””7. css - 手机页面在安卓和苹果浏览器显示不同的小小问题8. javascript - 修改表单多选项时和后台同事配合的问题。9. 如何判断数据库的库和表是否存在?10. browsersync检测的静态页面只能用index.html命名,用demo.html就不能实时同步,检测动态页面的时候,比如wamp环境下,用browsersync能打开页面,但不能实现同步
