python学习之前端css

表单标签知识补充

  • 获取用户输入的标签两大重要的属性

    • name属性

      类似于字典的键

    • value属性

      类似于字典的值

form表单在朝后端发送数据的时候,标签必须要有name,否则不会发送该标签的值

  • 获取用户输入的input标签理论上需要有label配合使用

    <label for="某个input标签的id值"></label>
    
  • 获取用户输入的input标签也可以添加背景提示

    <input type="text" name="password" placeholder="密码">
    
  • 获取用户输入的标签如果不是让用户自己写而是选择,那么标签需要自己写value

    <input type="radio" name="gender" value="male">男
    <input type="checkbox" name="hobby" value="basketball">篮球
    <select name="province" id="">
    	<option value="sh">上海</option>
    </select>
    
  • 针对 radio 和 checkbox 可以默认选中

    <input type="checkbox" checked="checked"  />
    <!--checked="checked" 如果属性名和属性值相等,那么可以简写 checked-->
    <input type="checkbox" checked />
    
  • 针对option标签也可以默认选中

    <option selected="selected" value="2">上海</option>
    <!-- selected="selected" 简写为 selected -->
    <option selected value="2">上海</option>
    

CSS

  • CSS(Cascading Style Sheet,层叠样式表)
  • 样式定义如何显示 HTML 元素
  • 样式通常存储在样式表
  • 外部样式表可以极大提高工作效率

当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染)。

语法结构

选择器 {
        属性名1:属性值1;
        属性名2:属性值2;
}

注释语法

/* 注释内容 */

基本选择器

元素选择器

p {color: "red";}

ID选择器

#i1 {
  background-color: red;
}

类选择器

.c1 {
      font-size: 14px;
}

p.c1 {  
	color: red;
}

通用选择器

* {
  color: white;
}

组合选择器

后代选择器

/*li内部的a标签设置字体颜色*/
li a {
  color: green;
}

儿子选择器

/*选择所有父级是 <div> 元素的 <p> 元素*/
div>p {
  font-family: "Arial Black", arial-black, cursive;
}

毗邻选择器

/*选择所有紧接着<div>元素之后的<p>元素*/
div+p {
  margin: 5px;
}

弟弟选择器

/*i1后面所有的兄弟p标签*/
#i1~p {
  border: 2px s0olid royalblue;
}

属性选择器

所有的标签除了有自己默认的属性之外,还可以拥有自定义的任意属性:

  • 默认属性:

    id

    class

  • 自定义属性:

    x=1

    y=2

  /*1.查找属性名含有name的标签*/
[name] {
   background-color: red;
}
/* 2.查找属性名含有name并且值是username的标签 */
[name='username'] {
   background-color: orange;
}
/*3.查找input标签并且 属性名含有name值是username的*/
input[name='username'] {
   background-color: aqua;
}
/*前面的选择器可以是任意类型的 标签、id、class*/

分组与嵌套

分组

当多个选择器查找到的标签需要调整相同的样式,那么可以合并,选择器之间用逗号分隔开

div,p,span {
	color: red;
}

并且合并的选择器彼此不干扰也没有类型的限制

#d1,.c1,span {
    color: red;
}

嵌套

多种选择器可以混合起来使用,比如:.c1类内部所有p标签设置字体颜色为红色。

.c1 p {
  color: red;
}

伪类选择器

/* 未访问的链接 */
a:link {
  color: #FF0000
}

/* 鼠标移动到链接上 */
a:hover {
  color: #FF00FF
} 

/* 选定的链接 */ 
a:active {
  color: #0000FF
}

/* 已访问的链接 */
a:visited {
  color: #00FF00
} 

/*input输入框获取焦点时样式*/
input:focus {
  outline: none;
  background-color: #eee;
}

伪元素选择器

CSS伪类/元素

选择器 示例 示例说明
:link a:link 选择所有未访问链接
:visited a:visited 选择所有访问过的链接
:active a:active 选择正在活动链接
:hover a:hover 把鼠标放在链接上的状态
:focus input:focus 选择元素输入后具有焦点
:first-letter p:first-letter 选择每个<p> 元素的第一个字母
:first-line p:first-line 选择每个<p> 元素的第一行
:first-child p:first-child 选择器匹配属于任意元素的第一个子元素的<p>元素
:before p:before 在每个<p>元素之前插入内容
:after p:after 在每个<p>元素之后插入内容
:lang(language) p:lang(it) <p>元素的lang属性选择一个开始值

first-letter

常用的给首字母设置特殊样式:

p:first-letter {
  font-size: 48px;
  color: red;
}

before

/*在每个<p>元素之前插入内容*/
p:before {
  content:"*";
  color:red;
}

after

/*在每个<p>元素之后插入内容*/
p:after {
  content:"[?]";
  color:blue;
} 

before和after多用于清除浮动。

选择器的优先级

  1. 选择器相同,引入位置不同

    就近原则

  2. 选择器不同的情况

    行内 > id选择器 > 类选择器 > 标签选择器

ps:自行查阅强制修改标签样式的操作 !important

属性相关

宽和高

width属性可以为元素设置宽度。

height属性可以为元素设置高度。

块级标签才能设置宽度,内联标签的宽度由内容来决定。

字体属性

文字字体

font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体,则会尝试下一个。浏览器会使用它可识别的第一个值。

简单实例:

body {
  font-family: "Microsoft Yahei", "微软雅黑", "Arial", sans-serif
}
字体大小
p {
  font-size: 14px;
}

如果设置成inherit表示继承父元素的字体大小值。

字重(粗细)

font-weight用来设置字体的字重(粗细)。

描述
normal 默认值,标准粗细
bold 粗体
bolder 更粗
lighter 更细
100~900 设置具体粗细,400等同于normal,而700等同于bold
inherit 继承父元素字体的粗细值
文本颜色

颜色属性被用来设置文字的颜色。

颜色是通过CSS最经常的指定:

  • 十六进制值 - 如: FF0000
  • 一个RGB值 - 如: RGB(255,0,0)
  • 颜色的名称 - 如: red

还有rgba(255,0,0,0.3),第四个值为alpha, 指定了色彩的透明度/不透明度,它的范围为0.0到1.0之间。

文字属性

文字对齐

text-align 属性规定元素中的文本的水平对齐方式。

描述
left 左边对齐 默认值
right 右对齐
center 居中对齐
justify 两端对齐
文字装饰

text-decoration 属性用来给文字添加特殊效果。

描述
none 默认。定义标准的文本。
underline 定义文本下的一条线。
overline 定义文本上的一条线。
line-through 定义穿过文本下的一条线。
inherit 继承父元素的text-decoration属性的值。

常用的为去掉a标签默认的自划线:

a {
  text-decoration: none;
}
首行缩进

将段落的第一行缩进 32像素:

p {
  text-indent: 32px;
}

背景属性

/*背景颜色*/background-color: red;
/*背景图片*/
background-image: url('1.jpg');/* 背景重复 repeat(默认):背景图片平铺排满整个网页 repeat-x:背景图片只在水平方向上平铺 repeat-y:背景图片只在垂直方向上平铺 no-repeat:背景图片不平铺*/
background-repeat: no-repeat; 
/*背景位置*/
background-position: left top;/*background-position: 200px 200px;*/

支持简写:

background:#336699 url('1.png') no-repeat left top;

边框

边框属性

  • border-width
  • border-style
  • border-color
#i1 {
  border-width: 2px;
  border-style: solid;
  border-color: red;
}

通常使用简写方式:

#i1 {
  border: 2px solid red;
}

边框样式

描述
none 无边框。
dotted 点状虚线边框。
dashed 矩形虚线边框。
solid 实线边框。

除了可以统一设置边框外还可以单独为某一个边框设置样式,如下所示:

#i1 {
  border-top-style:dotted;
  border-top-color: red;
  border-right-style:solid;
  border-bottom-style:dotted;
  border-left-style:none;
}

border-radius

用这个属性能实现圆角边框的效果。

将border-radius设置为长或高的一半即可得到一个圆形。

display属性

用于控制HTML元素的显示效果。

意义
display:"none" HTML文档中元素存在,但是在浏览器中不显示。一般用于配合JavaScript代码使用。
display:"block" 默认占满整个页面宽度,如果设置了指定宽度,则会用margin填充剩下的部分。
display:"inline" 按行内元素显示,此时再设置元素的width、height、margin-top、margin-bottom和float属性都不会有什么影响。
display:"inline-block" 使元素同时具有行内元素和块级元素的特点。

display:"none"与visibility:hidden的区别:

visibility:hidden: 可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。

display:none: 可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。

posted @ 2022-08-23 19:38  梦想有双休  阅读(48)  评论(0)    收藏  举报