less12345678910111213141516171819202122232425262728<template> <div class="layout"> <Menu></Menu> <div class="layout-right"> <Header></Header> <Content></Content> </div> </div></template><script setup lang="ts">import Menu from './Menu/index.vue'import Header from './Header/index.vue'import Content from './Content/index.vue'</script><style lang="less" scoped>.layout { display: flex; height: 100%; overflow: hidden; &-right { flex: 1; display: flex; flex-direction: column; }}</style> &表示父级,拼接在一起为全称。这种写法更清晰,简便。 scoped写vue的时候,原本分开的文件打包时可能会合并在一起,scoped可以将同名样式区分开,防止冲突。