v-show/v-if?控制元素顯示或隱藏
v-show 是用display:none;來(lái)控制元素顯示或隱藏的
v-if 是用visibility:hidden间坐;來(lái)控制元素顯示或隱藏的
display:none與visibility:hidden的區(qū)別
1.display:none是徹底消失,不在文檔流中占位和二,瀏覽器也不會(huì)解析該元素贫母;visibility:hidden是視覺(jué)上消失了,可以理解為透明度為0的效果丰滑,在文檔流中占位顾犹,瀏覽器會(huì)解析該元素;
2.使用visibility:hidden比display:none性能上要好褒墨,display:none切換顯示時(shí)visibility炫刷,頁(yè)面產(chǎn)生回流(當(dāng)頁(yè)面中的一部分元素需要改變規(guī)模尺寸、布局郁妈、顯示隱藏等浑玛,頁(yè)面重新構(gòu)建,此時(shí)就是回流噩咪。所有頁(yè)面第一次加載時(shí)需要產(chǎn)生一次回流)顾彰,而visibility切換是否顯示時(shí)則不會(huì)引起回流极阅。
例如有三個(gè)table,將中間的一個(gè)table hidden掉涨享,你會(huì)發(fā)現(xiàn)在那個(gè)被hidden的table看不見(jiàn)了筋搏,但是,中間會(huì)留有很大的一空白厕隧,而這個(gè)空白就是這個(gè)table沒(méi)有被隱藏時(shí)所占的位置
而none的作用更像是把元素從網(wǎng)頁(yè)中“去除”(當(dāng)然不是真的去除拆又,只是效果是如此)
例如有三個(gè)table,將中間的一個(gè)table none掉栏账,你會(huì)發(fā)現(xiàn)在剩下的兩個(gè)table中間不會(huì)有任何的空白帖族。就好像中間的那個(gè)table從來(lái)不存在過(guò)一樣
v-bind ? ?綁定元素 ? ?v-bind:屬性名=‘值’
例:
new Vue({
? ? ? ? ? el:'.itany',
? ? ? ? ? data:{
? ? ? ? ? ? ? url:'img/1.jpg',
? ? ? ? ? ? ? hef:'img/2.jpg'
? ? ? ? ? },
? ? ? ? ? methods:{
? ? ? ? ? ? ? chg:function(){
? ? ? ? ? ? ? ? ? this.url=this.hef
? ? ? ? ? ? ? }
? ? ? ? ? }
? ? ? })