在css中,外链式显著的优点是十分的便捷,高效,但是同时也造成了不能够重用样式的缺点,如果代码行数到达一定长度不建议采用。
CSS样式表一般指CSS,层叠样式表是一种用来表现HTML标准通用标记语言的一个应用或XML标准通用标记语言的一个子集等文件样式的计算机语言。
在vue中导入自定义的css文件或js文件
css文件
在main.js中导入公共的css
import '../static/css/common.css' //引入公用css
在页面中引入单独css
<style scoped>
@import '../../static/css/header.css'
</style>
Js文件
自定义js 中写:
function title(t){
alert(t)
}
export {
title //多个方法在此处json中export出去
}
页面中使用:
<template>
<div>
<button class="btn" @click="clickme">click me</button>
</div>
</template>
<script>
import {title} from './js/common.js' //可以选择需要的方法引入
export default {
data(){
return{
}
},
methods:{
clickme(){
title('你点我了')
}
}
}
</script>
或者
import Comjs from './js/common.js' //引入公用js
Vue.prototype.$comjs = Comjs//添加到vue属性中
自定义js 中写:
const comjs = {
}
comjs.title = function (title) {
alert(title)
}
export default comjs
页面中使用:
<template>
<div>
<button class="btn" @click="clickme">click me</button>
</div>
</template>
<script>
export default {
data(){
return{
}
},
methods:{
clickme(){
this.$comjs.title('你点我了')
}
}
}
</script>
1.首先,从功能上来说,这3个实现的功能是一样的,都能够达到对内容进行排版修饰。2.但是,从用法上来说,他们的使用方式是不同的,下面我们来一一区分:
第一种,外部式,是单独写一个以.css为扩展名的文件,然后在<head></head>中使用<link>标签,将css样式链接到html中
举个例子:<link href="css样式的名字(一般自己取).css" rel="stylesheet" type="text/css">
这里需要注意的是,rel="stylesheet"和type="text/css"是固定写法,不可修改
第二种,嵌入式,这个可以理解为嵌套,现在<body></body>文本中写下需要的元素标签,比如span,然后在<head></head>中单独写一个css样式
举个例子:
<head>
<style type="text/css">
span{color:re}
</style>
</head>
<body>
<p>莱昂纳多演的<span>了不起的盖茨比</span>非常好看。</p>
</body>
这里就是用嵌入式,对了不起的盖茨比设置颜色,不过,设置的具体样式,我们写在<head></head>中,在<body></body>中只对要设置样式的内容加入元素标签。
第三种,内联式,这个是3个里面最容易的,我们既不需要另写一个以“.css"为扩展名的文件,也不需要单独在<head></head>中设置样式,这里,我们可以直接写在<body></body>的元素标签中
举个例子:
<body>
<p>莱昂纳多演的<span style="color:red">了不起的盖茨比</span>非常好看。</p>
</body>
最后,我们来说一下优先级或者权重值(也叫做权值,这3个说法实际一个意思)
这个涉及到以后学习的内容,我在这里先补充下:
内联样式的权值为:1000
ID选择器的权值为:100
类或伪类的权值为:10
元素和伪元素的权值为:1
连接符和通配符(*)的权值为0
继承的权值连0都没有(如果不想这样理解,可以理解为继承的权值是所有里面最小最小的)
那现在我们来看内联式,它是1000,所以内联式,外部式,嵌入式都有的情况下,权重最大的执行,所以此时是内联式的样式
外部式和嵌入式的权值在一样的情况下,浏览器会执行覆盖命令,所以写在后面的会被执行