diff --git "a/\345\220\264\344\275\263\351\242\226/2024.10.09\350\203\214\346\231\257\345\261\236\346\200\247-\351\200\211\346\213\251\345\231\250.md" "b/\345\220\264\344\275\263\351\242\226/2024.10.09\350\203\214\346\231\257\345\261\236\346\200\247-\351\200\211\346\213\251\345\231\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..c792e5e1f13f9e3bc34e8152a0b6583fb8e8579b --- /dev/null +++ "b/\345\220\264\344\275\263\351\242\226/2024.10.09\350\203\214\346\231\257\345\261\236\346\200\247-\351\200\211\346\213\251\345\231\250.md" @@ -0,0 +1,154 @@ +# 叠加渐变作业 +![20241010200159](sjt5yxtw4.hn-bkt.clouddn.com/20241010200159.png) +关键代码(css) +```css + div{ + width: 400px; + height: 400px; + border: 1px solid; + background-image: repeating-linear-gradient(rgb(255, 92, 78,0.5) 0px,rgb(255, 92, 78,0.5) 20px,transparent 20px,transparent 40px ), + repeating-linear-gradient(90deg,rgb(255, 92, 78,0.5) 0px,rgb(255, 92, 78,0.5) 20px,transparent 20px,transparent 40px ); + } +``` +## CSS语法 +格式:(键值对的形式) +```css +选择器{属性名 : 属性值 ; 属性名 : 属性值 ;} +``` +一个属性有多个值的话,就用空格隔开 + +## 书写方式 +1. 行内样式 + + 在特定标签里采用style属性,只对此标签适用 + ```html +

我想回家睡觉

+ ``` + +2. 内嵌样式 + + 在head标签里采用` + +

回家

+

睡觉

+ + ``` + +3. 外链样式 + + 引入外部样式表CSS文件。两种引入方式: + + 1. 采用``标签 + ```html + + ``` + ``标签的rel属性值有两种 + - `stylesheet`:定义的样式表 + - `alternate stylesheet`:候选的样式表 + + 2. 采用`import`导入,必须写在` + + +

洗白白

+

你懂得

+ +``` +3. **外链样式**:引入外部样式表 CSS **文件**。这种引入方式又分为两种: + - 采用``标签。例如:`` + + + **``标签的 rel 属性:**。其属性值有以下两种: + - `stylesheet`:定义的样式表 + - `alternate stylesheet`:候选的样式表 + - 采用`import `导入,必须写在` +``` + +记住,在css中,这四种状态**必须按照固定的顺序写**: + +> a:link 、a:visited 、a:hover 、a:active + +如果不按照顺序,那么将失效。“爱恨准则”:love hate。必须先爱,后恨。 + +### 超链接的美化 + +问:既然`a{}`定义了超链的属性,和`a:link{}`定义了超链点击之前的属性,那这两个有啥区别呢? + +答: + +**`a{}`和`a:link{}`的区别:** + + - `a{}`定义的样式针对所有的超链接(包括锚点) + - `a:link{}`定义的样式针对所有写了href属性的超链接(不包括锚点) + +超链接a标签在使用的时候,比较难。因为不仅仅要控制a这个盒子,也要控制它的伪类。 + +我们一定要将a标签写在前面,将`:link、:visited、:hover、:active`这些伪类写在后面。 +当我们在定义`a:link`和 `a:visited`这两个伪类的时候,如果它们的属性相同,我们其实可以写在一起,用逗号隔开就好,摘抄如下: + +```css + .nav ul li a{ + display: block; + width: 120px; + height: 50px; + } + /*两个伪类的属性,可以用逗号隔开*/ + .nav ul li a:link , .nav ul li a:visited{ + text-decoration: none; + background-color: purple; + color:white; + } + .nav ul li a:hover{ + background-color: orange; + } +``` + +如上方代码所示,最标准的写法,就是把link、visited、hover这三个伪类都要写。但是前端开发工程师在大量的实践中,发现不写link、visited也挺兼容。写法是: + +> a:link、a:visited都是可以省略的,简写在a标签里面。也就是说,a标签涵盖了link、visited的状态(前提是都具有了相同的属性)。写法如下: + + +```css + .nav ul li a{ + display: block; + width: 120px; + height: 50px; + text-decoration: none; + background-color: purple; + color:white; + } + .nav ul li a:hover{ + background-color: orange; + } + +``` + +当然了,在写`a:link`、`a:visited`这两个伪类的时候,要么同时写,要么同时不写。如果只写`a`属性和`a:link`属性,不规范。 + +## 动态伪类举例 + +我们在第一段中描述过,下面这三种动态伪类,针对所有标签都适用。 + +- `:hover` “悬停”:鼠标放到标签上的时候 +- `:active` “激活”: 鼠标点击标签,但是不松手时。 +- `:focus` 是某个标签获得焦点时的样式(比如某个输入框获得焦点) + +## 选择器真实项目练习 + +1. 给定html代码如下,按要求完成CSS规则 + +效果如下 +![20241011211025](sjt5yxtw4.hn-bkt.clouddn.com/20241011211025.png) +```css + .main section h1,main article h2 { + font-size: larger; + color: blueviolet; + } + aside h3{ + font-style:italic; + color: blueviolet; + } +``` + +任务:请写出CSS规则,使得.main类中的`
`和`
`元素中的所有`

`和`

`标签的字体变为粗体, +并且`