在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ vue范圍樣式是不是無法做到完全隔離

vue范圍樣式是不是無法做到完全隔離

關(guān)于css樣式隔離的一個疑問,在vue中的單文件組件中會幫我們在不同的節(jié)點上添加一個[data-dsa-sdw34]大概這樣的標簽來控制樣式范圍,但請看如下代碼,dialog中的視圖節(jié)點應(yīng)該也是會被影響的
假如dialog的視圖層級節(jié)點這樣:

<div>
    <span>我是dialog的文本</span>
</div>

這樣使用dialog組件:

<style>
    div[data-addr-234w4] {
        font-size: 20px;
    }
</style>
<div data-addr-234w4>
    <!-- 假如dialog是一個組件 -->
    <dialog></dialog>
</div>

原本dialog組件內(nèi)的樣式不應(yīng)該被外部div[data-addr]所影響,但按這樣的話,這個div內(nèi)部的所有文字大小都會是20px(除非dialog內(nèi)部有再設(shè)置字體大小外),這很無奈吧。但如果使用內(nèi)聯(lián)樣式,卻沒辦法使用@keyframes、或者-webkit-、-ie-等這樣的前綴。請問這要怎么破,大家是如何做css樣式范圍控制的?

回答
編輯回答
使勁操

<style scoped> 呢?

2017年4月5日 03:12
編輯回答
不舍棄

clipboard.png

這個scoped 屬性幫你把css范圍控制都做了 你為何還要這么改變css呢?

2018年3月2日 07:02
編輯回答
護她命

data-xxxxx 之所以是自動生成,就是防止重復(fù)嘛。你這還手動給搞重復(fù)。
真正的極客,是破解自己的代碼~~

2017年7月31日 17:34
編輯回答
憶往昔

[data-addr-234w4] 加了scoped渲染出來的css才會長這樣把,你這手動寫成這樣

2018年3月19日 08:26
編輯回答
病癮

你說的問題是font-size的繼承的問題,和你問的有什么關(guān)系?

2017年9月19日 08:50
編輯回答
挽歌

其實是會被影響的,在<dialog>的父節(jié)點定義的css在渲染出來后是一定會影響<dialog>組件的視圖內(nèi)容的,因為它們存在于子節(jié)點中

2017年3月31日 23:18
編輯回答
醉淸風(fēng)

和上面一個兄弟說的一樣樣式是會被繼承的,子元素的font-size會繼承自父元素,這是css的默認繼承和單文件組件沒有關(guān)系。style的scope屬性也只能給單文件組件加上data-**的屬性來控制不污染父元素外面的元素。如果想要子元素不被父組件影響的話只能也給子組件加上樣式了

2017年12月18日 05:18