【JavaWeb】前端开发三剑客之CSS(上)

news2024/12/25 12:15:30

✨哈喽,进来的小伙伴们,你们好耶!✨

🛰️🛰️系列专栏:【JavaWeb】

✈️✈️本篇内容:CSS从零开始学习!

🚀🚀代码托管平台github:JavaWeb代码存放仓库!

⛵⛵作者简介:一名双非本科大三在读的科班Java编程小白,道阻且长,星夜启程!

 接着上篇,我们已经对HTML有了初步的了解并且学习了基本的用法,那么今天这篇博客我们即将学习的是前端开发另一门语言CSS。

目录

什么是CSS?

认识CSS语法:

 CSS引入方式:

1、内部样式表

 2、内联样式

3、外部样式

敲黑板:

选择器:

一、基础选择器

1、标签选择器:

2、类选择器

3、id选择器

 4、通配符选择器

二、复合选择器

1、后代选择器

2、子选择器

3、并集选择器

在线文档:w3school官网


什么是CSS?

CSS被叫做:层叠样式表 (Cascading Style Sheets).
CSS 能够对网页中元素位置的排版进行像素级精确控制 , 实现美化页面的效果 . 能够做到页面的样式和结构分离,即HTML可以看做是人的骨骼,CSS可以看做是人的皮肤。

认识CSS语法:

CSS语法由:选择器 + { 一条 /N 条声明 }
选择器决定针对谁修改声明决定修改的内容;
声明的属性是键值对 . 使用 ; 区分键值对 , 使用 : 区分键和值
看代码:
     <style>
        p{
            /*设置字体颜色*/
            color: red;
            /*设置字体大小*/
            font-size: 20px;
        }
     </style>
     <p>
        hello CSS
     </p>

解释:这里的p就是选择器,此处就表示选择页面中的所有p标签;{}里面表示的就是键值对结构,表示CSS中的各种属性;键值对之间使用 ";"来分割,键和值之间使用 : 来分割。/* */是CSS中的注释。

运行结果:

 CSS引入方式:

1、内部样式表

通过style标签来写CSS,虽然不太常见,但是对于一般的CSS代码来说,这样写没啥毛病。

 2、内联样式

通过HTML标签中的style属性,来应用。

    <p style="color: green;">Hello CSS</p>

运行结果:

 这种写法属于一种比较特殊的写法,通常呢会搭配JS来使用,只适合于样式特别简单的情况,因为对于一些复杂的案例,这样写的话显得代码非常乱。同时这种写法只针对当前元素生效。

3、外部样式

这种样式是实际开发中最常使用的,就是把CSS文件单独提取出来,放到一个.css文件中;然后在通过HTML中的代码,通过link标签,来引入该css文件。

test.css文件

p {
    color: blue;
}

 .html文件(注意这行代码通常放在head标签中)

<link rel="stylesheet" href="test.css">
<body>
    <p>
        hello css
    </p>
</body>

运行结果:

敲黑板:

注意html和css都是不区分大小写的,习惯上在写代码的时候,统一使用小写。

选择器:

选择器的功能就是选中页面的元素,可以一次选择一个,也可以一次选中一批。

一、基础选择器

1、标签选择器:

写的选择器p就是一个html的标签名。

2、类选择器

这个就非常牛了,通过这个选择器,可以任意的选择想要的元素,那么有人就会问了,那有这一种选择器就可以了呀!为什么还需要其他的选择器呢?

理论上是这样,但是为了使代码更简单,还是引入了很多各种其他的选择器。这就像我们的电脑有CPU同时还有GPU。

使用方法:

首先,我们需要在css代码中创建一个类名,在对应的html元素中,通过class属性来引用这个类名。那么具有这个类名的元素就都会应用上相关的属性。

比如我们想让HTML中的元素都是绿色的!

HTML代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>这是CSS的代码</title>
    <!--外部样式-->
    <link rel="stylesheet" href="test.css">
</head>
<body>
    <style>
            .green {
        color: green;
    }
    </style>
    <p class="green">
        hello 类名
    </p>
    <p class="green">
        hello java
    </p>
</body>
</html> 

注意代码中的 .类名 { } 这个.后面的就是类名;使用class属性来引入类名。

运行结果:

3、id选择器

即给被选中的元素设置个id属性;id属性前面使用#来表示;id在一个页面里面不能重复。

    <style>
        #isid{
            color: blue;
        }
    </style>
    <p>
        这不是id属性
    </p>
    <p id="isid">
        这是id属性
    </p>

运行结果:

 4、通配符选择器

使用 * 的定义 , 选取所有的标签
代码:
    <style>
        * {
            color: red;
        }
    </style>
    <p>
       这是1
    </p>
    <p>
        这是2
    </p>
    <p>
        这是3
    </p>
即页面的所有内容都会被改成红色不需要被页面结构调用
运行结果:

 这个选择器的最大作用就是在进行前端开发的时候,要求咋们的页面不要依赖浏览器的默认样式。

二、复合选择器

1、后代选择器

即通过多个选择器的组合,能够选中某个元素里面的子孙/后代。

样式:选择器1 选择器2{ }

注意:中间必须有空格;选择器1和2都可以是标签选择器/类选择器/id选择器

正确代码演示:

ul .houdai{
    color: red;
}

找ul标签里面看是否有class为houdai的元素。

错误代码演示:

ul.houdai{
    color: red;
}

这个代码ul和.houdai之间就没有空格,意思就是找ul同时class为houdai的元素。

2、子选择器

通过多个选择器的组合,能够选中某个元素里面的子元素。

样式:选择器1>选择器2

        ul>houdai{
            color:green;
        }

3、并集选择器

并列的写多个选择器,中间用逗号来分割;这里的并集选择器,里面可以写简单的选择器也可以写复杂的选择器。

        ul>li,ol>li{
            color: blue;
        }

关于CSS的后序学习,可以关注一个网站W3school,这上面基本涵盖了所有的CSS知识。方便大家的后序学习!

在线文档:w3school官网

那么关于CSS的选择器是十分庞大的,有好几十种,那么博主也就是简单介绍一些常用的,毕竟博主是个搞后端的!哈哈!关于CSS的选择器我们就先介绍到这里,下期博主会继续更新CSS的下半部分内容,包括元素属性,文本属性,背景属性,盒模型,弹性布局等等,学会了这些基本CSS语法,完全可以大致能看懂前端部分CSS的代码。OK,那么今天就到这里,我们下期再见!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/173437.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

擎创动态 | 官宣!与深智城集团正式签约

近日&#xff0c;上海擎创信息技术有限公司与深圳市智慧城市科技发展集团有限公司&#xff08;以下简称“深智城集团”&#xff09;就“一体化协同办公平台项目”达成战略合作&#xff0c;签约仪式已圆满完成。 ​深智城集团副总经理罗介平、智城软件公司常务副总经理韩小宇、智…

android 读取assets配置文件

方法1-getAssets().open(“re.properties”) try {Properties props new Properties();props.load(getAssets().open("re.properties"));Log.e(TAG, "className:" props.getProperty("className"));} catch (IOException e) {e.printStackTrace…

支持加密的日记应用程序DailyTxT

本文完成于 12 月下旬&#xff0c;对应的版本为 1.0.10(2022_11_02)&#xff1b; 什么是 DailyTxT &#xff1f; DailyTxT 是一个加密的 Web 日记应用程序&#xff0c;用于写下您当天的故事并轻松地再次找到它们。它是用 Python Flask&#xff08;后端&#xff09;和 Vue.JS&am…

23种设计模式(十二)——外观模式【接口隔离】

外观模式 文章目录 外观模式意图什么时候使用外观真实世界类比外观模式的实现外观模式的优缺点亦称:Facade 意图 外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容…

一直以来,人们都在探索互联网赋能实体的正确的途径和逻辑

一直以来&#xff0c;人们都在寻找互联网回归实体的正确的方式和方法&#xff1b;一直以来&#xff0c;人们都在探索互联网赋能实体的正确的途径和逻辑。然而&#xff0c;互联网似乎始终都游离于产业之外&#xff0c;似乎始终都超脱于产业之上。尽管经历了PC时代和移动互联网时…

分支预测详解

分支预测用于在微处理器中以流水线效率为目标来预测程序流。有许多方法来实现分支预测&#xff0c;通常在更好的预测结果和增加硬件做预测之间需要进行权衡。 目录 分支预测简介 静态分支预测 动态分支预测 启动分支预测 分支预测简介 要了解分支预测器&#xff0c;就不得…

QT当类有多个不同类型的同名信号时如何处理QOverload?

我们在设计类的信号时也许也会像设计类方法一样&#xff0c;给予多种不同参数类型的重载版本&#xff0c;这样一来我们就可以应对不同类型的参数输入或者输出。 但我们在使用有重载的信号版本时就不那么方便了&#xff0c;QT系统没有那么智能&#xff0c;不会自动匹配&#xff…

【实操案例三】进制转换、异常捕获、输出颜色设置、格式化字符串的设置等实例代码及运行效果图!

任务一&#xff1a;将指定的十进制数转换成二进制、八进制、十六进制 # 任务一&#xff1a;将指定的十进制数转换成二进制、八进制、十六进制 def fun():numint(input(请输入一个十进制整数&#xff1a;))print(num,的二进制数为&#xff1a;,bin(num)) # 第一种写法&#xff…

网线交叉、直连区别

欢迎来到东用知识小课堂&#xff01;一.网线常识网线常用的有&#xff1a;双绞线、同轴电缆、光纤等。双绞线可按其是否外加金属网丝套的屏蔽层而区分为屏蔽双绞线&#xff08;STP&#xff09;和非屏蔽双绞线&#xff08;UTP&#xff09;。从性价比和可维护性出发&#xff0c;大…

golang语言websocket百万长链接

是简单demo测试 前端 <html> <head><title>Simple client</title><script type"text/javascript">var ws;function init() {// Connect to Web Socketws new WebSocket("ws://localhost:8866/ws");// Set event handlers…

联合证券|再创纪录,外资狂买超1000亿!券商、期货板块持续活跃

A股今天全线上扬&#xff0c;沪指小幅走高&#xff0c;创业板、科创50指数体现强势&#xff1b;港股走势疲弱&#xff0c;恒生科技指数一度跌超2%。 详细来看&#xff0c;两市股指盘中震动上扬&#xff0c;午后全线走高&#xff0c;创业板指、科创50指数涨超1%&#xff1b;到收…

PCB板缺陷检测识别系统 YOLOv7

PCB板缺陷检测识别系统通过YOLOv7网络深度学习技术&#xff0c;对现场PCB是否存在缺陷部分进行实时分析检测&#xff0c;当检测到PCB本身存在缺陷的时候&#xff0c;立即抓拍存档告警方便后期针对性的进行调整改。YOLO系列算法是一类典型的one-stage目标检测算法&#xff0c;其…

CSS+JS 折叠

文章目录CSSJS 折叠效果CSSjQuery 鼠标经过显示详细信息CSSJS 折叠效果 <!DOCTYPE html> <html><head><meta charset"utf-8"><title>折叠效果</title><style type"text/css">.collapse-box {width: 500px;borde…

FMC子卡设计资料原理图:FMC177-基于AD9361的双收双发射频FMC子卡

FMC177-基于AD9361的双收双发射频FMC子卡一、板卡介绍 FMC177射频模块分别包含两个接收通道与发射通道&#xff0c;其频率可覆盖达到70MHz~6GHz&#xff0c;AD9361芯片提供具有成本效益的实验平台&#xff0c;具有达到56MHz的瞬时带宽&#xff0c;更高的灵敏度&#xff…

Java 23种设计模式(2.创建者模式-单例设计模式)

1. 创建者模式 创建型模式分为&#xff1a; 单例模式工厂方法模式抽象工程模式原型模式建造者模式 什么是创建者模式&#xff1f; 创建型模式的主要关注点是“怎样创建对象&#xff1f;”&#xff0c;它的主要特点是“将对象的创建与使用分离”。 这样可以降低系统的耦合度…

Windows 下 VS Code 远程连接 Ubuntu 并配置免密登录

文章目录1.安装 Visual Studio Code2.安装必要的插件3.为本机生成 SSH 密钥对4.将公钥拷贝到 Ubuntu 上5.配置 Remote 插件6.关闭远程连接7.卸载 Visual Studio Code7.1 在控制面板中找到 Visual Studio Code 将其卸载7.2 删除之前安装过的插件7.3 删除用户信息和缓存信息1.安装…

BootStrap使用笔记+案例

前端开发 第三节BootStrap BootStrap BootStrap是别人写好的CSS样式&#xff0c;如何使用BootStrap&#xff1a; 下载BootStrap使用 在页面上引入BootStrap编写HTML时&#xff0c;按照BootStrap的规定来编写 自定制 开发版本&#xff1a;bootstrap.css 生产版本&#xf…

【HTML | CSS】春节将至,为网页挂上精美的灯笼吧(附源码)程序员的浪漫

&#x1f482;作者简介&#xff1a; THUNDER王&#xff0c;一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读&#xff0c;同时任汉硕云&#xff08;广东&#xff09;科技有限公司ABAP开发顾问。在学习工作中&#xff0c;我通常使用偏后…

在线支付系列【2】支付宝和微信支付发展史

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 文章目录支付宝发展史起步阶段发展阶段上升阶段微信支付发展史支付宝 支付宝是阿里巴巴集团于 2004 年推出的一款第三方支付的产品&#xff0c;目前隶属于蚂蚁金服&#xff08;杭州&#xff09;网络技术…

2023年最推荐苹果、华为、荣耀:一场“以人为中心”的口碑竞技

消费者需求是市场发展的风向标。经济学界早有洞察&#xff0c;诺贝尔经济学奖得主哈耶克曾提出“消费者主权”理论&#xff0c;认为生产什么&#xff0c;生产多少&#xff0c;应当由消费者的意愿和偏好决定。手机市场也是如此&#xff0c;存量竞争下&#xff0c;消费者进一步掌…