探索CSS:从入门到精通Web开发(二)

2023-12-05

前言

当我们谈论网页设计和开发时,CSS(层叠样式表)无疑是其中的重要一环。作为HTML的伴侣,CSS赋予网页以丰富的样式和布局,使得网站看起来更加吸引人并且具备更好的可读性。本书将通过一系列深入浅出的方式,带你从入门到精通CSS,探索Web开发的奥秘。

你将学到:

CSS基础知识: 我们会从CSS的基础语法和常用属性开始,让你了解如何使用CSS来设置网页的样式,包括文字样式、颜色、布局等方面。

响应式设计: 随着移动设备的普及,响应式设计已经成为Web开发的标配。我们将介绍如何利用CSS媒体查询和弹性布局来创建适应不同屏幕尺寸的网页。

CSS动画和过渡效果: 通过CSS的动画和过渡效果,可以让网页元素变得更加生动和吸引人。我们将教你如何运用这些技术来增强用户体验。

CSS预处理器: 介绍CSS预处理器(如Sass和Less)的使用,以及它们如何帮助你更高效地编写和管理CSS代码。

现代CSS技术: 探索一些现代的CSS技术,如Flexbox布局、Grid布局以及CSS变量,让你的网页开发更加高效和便捷。

无论你是初学者还是有一定经验的开发者,本书都将提供有关CSS的全面指导,帮助你更好地理解和运用CSS来打造精美的网页。让我们一起开始这段关于CSS探索之旅吧! 请添加图片描述

<style>
        /*css的注释*/
        /* 选择器 {css属性} 选择器是查找标签的*/
     p {
        /*字体的颜色*/
        color: aqua;
        /*字体大小,px是像素的意思*/
        font-size: 30px;
        /*背景颜色*/
        background-color: antiquewhite;
        /*宽高尺寸大小width height*/
        width: 400px;
        height: 400px;
}
    </style>
</head>
<body>
<p>这是一个p标签</p>

请添加图片描述

css 的引入方式

3种:

内嵌式:
css写在style标签中
提示:style标签可以写在页面的任意位置,但是通常约定写在head标签中
作用范围 当前页面
适用于 小案例

外联式:
css写在一个单独的.css文件中
提示:需要通过link标签在网页中引入
作用范围 多个页面
适用于 项目
 <link rel="stylesheet" href="./my.css">
行内式:
css写在标签style属性中
作用范围 当前标签
配合js使用
zhishiyigedivbaioqian

基础选择器:

    标签选择器: 就是以标签来命名的选择器
    选中的这个标签,所有的这个标签都生效 

字体

属性名 font-family
常见取值:具体字体1/2*/3、
css具有层叠性

一个属性冒号后面跟书写多个值叫做复合属性
font: style weight  size 字体 简写方式

文本样式:
缩进:属性名:text-indent
取值:数字+px 或者 数字+em(1em等于当前标签的font的字号值)
文字对齐:
text-align :center 居中
text-align :left 左对齐
要想给图片居中
给图所在的标签的父标签加上text-align :center注意不是img标签
文本修饰
属性名:text-decoration
取值:
属性值 underline 下划线(常用)
line-through 删除线
overline上划线
none无常用线
行高

=上间距+下间距+文本高度·
控制一行的上下行间距
属性名:line-height
取值:
数字+px 或者 倍数(当前标签font-size的大小)
拓展颜色
属性名 :文字颜色color
背景颜色:background-color
属性值
关键词:预定义的颜色名 red green…
rgb :红绿蓝三原色:取值范围0-255,rab(0,0,0)
rgba表示法:红绿蓝三原色+a表示透明度取值0-1;
十六进制表示法:#开头,将数字转换成十六进制表示 #000000,简写#000
标签居中:
在想居中的标签里加margin :0 auto

请添加图片描述

选择标签进阶

后代选择器:空格,儿子孙子都会选中
选择器 选择器 {…}
儿子选择器:>,只儿子选中
选择器>选择器 {…}
并集选择器:
选择器,选择器{…}

hover伪类选择器

作用:选中鼠标悬停在元素上的状态,设置样式
选择器语法:选择器:hover{css}

背景颜色
background-color: ;
背景图片
background-image: url();
背景平铺
background-repeat(bgr)
取值:no-repeat 不平铺 repeat-x 沿着水平方向x轴平铺 repeat-y亚y轴
背景位置
background-position(bgp)
取值:方位名词(水平方向) 方位名词(垂直方向)
或者写数字 50px 220px等等 (这个表示向右移50,向下走220)
连写:
单个属性的合写,取值之间空格隔开

元素显示模式:

块级元素:显示特点 独占一行,一行显示同一个,宽度默认是父元素的宽度,高度默认是由内容撑开
可以设置宽高 代表:div p h ul dl dd from nav footer
行内元素:显示特点在同一行显示,不可以设置宽高,宽高由内容默认撑开
代表:a span b u i s strong ins em del
行内块元素:显示特点: 一行显示多个可以设置宽高
代表 input textarea,button select
元素显示模式转换:
目的:改变元素默认的显示特点,让元素符合布局要求
属性:display:block 转换成块级元素,
display:inline-block转换成行内块元素
display:inline 转化成行内元素
特殊注意:p标签中不要嵌套div p h等块级元素
a标签内部不能嵌套a标签
请添加图片描述

盒子模型:

页面中的每一个标签多可以称为盒子
盒子分别由:内容区域,内边距区域padding,边框区域border,外边距区域margin构成。
border:粗细 线条样式 颜色
solid 实线
border:1px solid #000;
dashed:虚线dotted:点线
、border:5px dashed/dotted #000;

盒子模型自动内减(不用手动计算盒子大小):给border设置属性box-sizing : border-box
清除默认内外边距:比如body标签有margib: 8px
p标签有上下的margin
ul标签有由上下的margin padding-left
*{margin:0; padding:0;}

版心居中:
margin: 0 auto;
外边距的折叠现象-

合并现象
垂直布局的块级元素,上下的margin会合并
结果:最终两者距离为margin的最大值

塌陷现象:
互相嵌套的块级元素,子元素语句作用在父元素上 结果导致父元素一起改变
解决方法:
一:给父元素设置overflow:hidden
二:给父元素设置border-top 或者padding-top
三:转换成行内元素
四:设置浮动

结构伪类选择器:

选择器:E:first-child{} 匹配父元素第一个子元素
E:last-child{}匹配父元素最后一个选择器
E:nth-child(n){}匹配父元素第n个元素
E:nth-last-child(n)匹配父元素倒数第n个元素
n可以取值2n 4n等even(偶数) odd(奇数)
伪元素:一般页面的非主体内容可以使用伪元素
由css模拟出的标签效果
::before 在父元素内容最前面添加一个微元素
::after 在父元素内容最后面添加一个微元素
必须设置content属性才能生效

浏览器解析行内块或行内标签的时候,如果标签换行书写会产生一个间隙

请添加图片描述

浮动:

float之后的标签具有行内块特点
float 使盒子在同一行
浮动元素会脱离标准流,在标准流中的不占原来位置
浮动元素比标准流高半个级别,可以覆盖标准流中的原素
清除浮动·:
清除浮动带来的影响、
父子级标签,子集浮动,父级没有高度,后面的标准流会受到影响
放法:
额外标签法
在父元素内容的最后添加一个块级元素
给添加的块级元素设置clear:both(清除左右浮动)
缺点: 会在页面额外添加标签,会让结构复杂

单伪元素清除法:
 写法:.clearfix::after{
    content:“;
    display:block;
    clear:both;
}   

给父元素设置overflow:hidden

定位:

可以让元素自由的摆放在网页是任意位置
一般用于盒子之间的层叠
设置定位方式:
position 属性值:static静态定位
relative相对定位 absolute绝对定位
static再设置偏移值:水平 left 数字+px 距离左边距的 距离
垂直 top 数字+px 距离上边距的距离

子级绝对定位,父级相对定位
位移 :transform(-50%,-50%)
移到自己盒子的中间

固定定位:
position:fixed;

请添加图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

探索CSS:从入门到精通Web开发(二) 的相关文章

  • 跨浏览器:禁用输入字段的不同行为(文本可以/不能复制)

    我有一个被禁用的输入 html 字段 在某些浏览器 Chrome Edge Internet Explorer 和 Opera 中可以选择并复制文本 但至少在 Firefox 中这是不可能的 您可以通过在不同浏览器中执行以下代码来测试
  • 是否有针对 CSS 位置和可点击区域的 Android 浏览器错误的解决方法?

    当您有一些可点击的内容时 例如 a a
  • 两个 Div 之间的固定宽度间隙

    有谁知道如何修复两个 div 之间的间隙 我有一个主要内容 Div 里面有两个带有图片的 Div 视图的宽度为 768 像素 当我开始拉伸视图时 两张图片开始相互远离 但理想情况下 主要内容 Div 应该在周围有空白的情况下拉伸 并且图片之
  • 在 IE 8 及以下版本中动态添加 @font-face 规则

    我使用 IE stylesheet addRule 方法添加 font face 规则 但是 符号对于该方法的 选择器 参数来说是不允许的字符 因此我收到 无效参数 错误 s addrule font face font family Fo
  • Flexbox 不适用于 iPad 和 Safari [重复]

    这个问题在这里已经有答案了 我在网站上使用 Flexbox 但它在 iPad Air iPad 3 和 Safari PC 上崩溃 设计和代码与此 codepen 类似 http codepen io anon pen xwJzEg htt
  • 如何动态打破 FlexBox 列以开始新列

    I have a dynamic list of items containing text placed column wise which I need to break after every 5th item 我只有两个限制 每个
  • 使用 JavaScript 使链接保持活动状态并在单击时显示悬停效果

    I am struggling to make this work I d like to make it where if O F is clicked the hover state stays active if another li
  • 保持未知数量的 div 居中,每行最多 4 个

    我有一个简单的问题 但我自己无法解决 简而言之 有一个未知电话我必须在页面中放置的元素数量 最多 每行 4 个元素 但仍居中 此图片给您一个提示 我为了示例而设置它 详细 在上图中我涵盖了不同的场景 例如 如果总共有 5 个元素 则应使用第
  • 现在 CSS3 供应商前缀有多必要? [复制]

    这个问题在这里已经有答案了 我只是想知道现在在 CSS 中指定 webkit moz ms 或 o 等供应商前缀在多大程度上仍然有必要 如果我理解正确的话 opera 切换到了 webkit 所以会删除 o 对吗 IE 在 IE10 中不再
  • 带有相对路径的 LESS CSS 背景

    我在使用 LESS 作为我的网站的样式表时遇到了问题 就我个人而言 我宁愿在CSS中使用相对路径而不是绝对路径 这只是我的习惯 但是现在当我使用带有导入功能的LESS时 我遇到了如下所示的问题 我有一个main less根文件夹中的文件 i
  • 在剑道组合框中动态添加项目

    如果你们中有人使用过 kendo ui 请告诉我如何在 kendo 组合框中动态添加新项目 我尝试在谷歌和其他地方搜索 我的结论是剑道中没有这样的功能 以供参考 JSBIN http jsbin com ebutaw 2 edit sour
  • 输入文本中固定下划线

    我试图修复所有输入文本类型中的下划线 但没有成功 Example My code input width 100 background color fcfcfc border 0 padding 10px div class col lg
  • 如何将div对齐到页面底部,而不是屏幕底部

    我想将 div 与页面底部对齐 而不是与屏幕底部对齐 当我这样做时 contact block position absolute bottom 0 left 0 div 被放置在屏幕的底部区域 当我的页面很长时 我必须向下滚动 并且本应位
  • 比例背景图像

    我想放大和缩小页面中的背景图像 我尝试过多种方法 但似乎没有一种方法能按照我想要的方式工作 我的页面的网址是http quaaoutlodge com drupal 7 14 http quaaoutlodge com drupal 7 1
  • 禁用单一样式的 CSS 转换?

    为单个样式启用 CSS 过渡非常容易 但是是否可以为单个样式禁用它们 单一样式过渡的常用方法是 div transition opacity 0 5s 但我想做的是设置一个全局转换 然后为单个属性禁用它 也许是这样的 div transit
  • 当悬停时不透明度发生变化时,Google Chrome 中的背景会发生变化

    我使用 Jquery 设置了悬停效果 可以更改悬停元素的不透明度 它在所有最新的浏览器中都能正常工作 除了 Chrome 它会改变 body 元素的背景 这是链接 http wrong ro tataia http wrong ro tat
  • 我的 iPhone 6 获取 iPhone 5 媒体查询

    我不明白这里发生了什么事 我在 CSS 媒体查询中专门针对 iphone 5 media only screen and min device width 320px and max device width 568px some div
  • 如何在 Bootstrap 3 中制作进度条动画?

    我正在尝试为 Bootstrap 进度条设置动画 但我不知道该怎么做 我得到了宽度的值但是console log bar width 返回宽度px但不是 如内联所示style width 90 我用代码重新创建了一个 bootply Boo
  • 带 CSS 网格的等宽侧边栏列

    是否可以让左右列具有相同的宽度 而中间列占据剩余空间 我不想设置像这样的百分比grid template columns 20 60 20 因为并不总是确定这些列的内容是什么 Flexbox 和表格似乎没有解决这个问题的方法 所以我再次尝试
  • 通过 vh 和 vw 调整 css 字体大小

    所以我想根据容器的大小自动调整文本的大小 但是如果我使用类似的东西 font size 5vw 看起来不错 但是当我缩小页面时 高度开始变得太小 无论如何 我是否可以根据 vh 和 vw 调整文本大小 例如 如果我只是减小页面的宽度 那么高

随机推荐