【重识 HTML (2),Java架构师面试宝典和答案

如何防止 margin collapse

  • 只设置其中一个元素的 margin

  • 条件允许的话,使用 padding 取代 margin

  • 以后理解得更深入,还会学到其他解决方法


两个兄弟块级元素之间上下 margin 的折叠:

在这里插入图片描述

无内容块级元素内部 margin 的折叠:

在这里插入图片描述

无内容块级元素之间 margin 的折叠(折叠是可以连续的):

在这里插入图片描述

块级元素折叠问题看似有点莫名其妙,实际上还是有实用之处的

  • 比如连续段落之间的 margin,恰好需要这种折叠效果

    在这里插入图片描述

border 边框

============================================================================

边框很常见:

在这里插入图片描述

CSS属性 - border-width、border-color、border-style


边框宽度:border-*-width

  • border-top-widthborder-right-widthborder-bottom-widthborder-left-width

  • border-width 是上面 4 个属性的简写属性

边框颜色:border-*-color

  • border-top-colorborder-right-colorborder-bottom-colorborder-left-color

  • border-color 是上面 4 个属性的简写属性

边框样式:border-*-style

  • border-top-styleborder-right-styleborder-bottom-styleborder-left-style

  • border-style 是上面 4 个属性的简写属性

  • 边框样式的取值:

    在这里插入图片描述

    none:没有边框,边框颜色、边框宽度会被忽略

    hidden:与 “none” 类似,多用在表格上,用于解决边框冲突

    dotted:边框是一系列的点

    dashed:边框是一条虚线

    solid:边框是一条实线

    double:边框有两条实线。两条线宽和其中的空白的宽度之和等于 border-width 的值

    groove:边框看上去好象是雕刻在画布之内

    ridge:和 grove 相反,边框看上去好象是从画布中凸出来

    inset:该边框使整个框看上去好象是嵌在画布中

    outset:和 inset 相反,该边框使整个框看上去好象是从画布中凸出来

示例代码:边框

CSS 属性 - border-top、border-right、border-bottom、border-left、border


border-topborder-rightborder-bottomborder-left:分别设置 4 个方向的边框

在这里插入图片描述

边框颜色、宽度、样式的编写顺序任意

border:统一设置 4 个方向的边框

在这里插入图片描述

边框的形状 - 三角形、双色平分


边框的形状可能是:矩形、梯形、三角形 等形状

在这里插入图片描述

实现三角形:

在这里插入图片描述

实现双色平分:

在这里插入图片描述

示例代码:形状-三角形状-太极

行内级非替换元素的注意点


以下属性对行内级非替换元素不起作用:

  • widthheightmargin-topmargin-bottom

以下属性对行内级非替换元素的效果比较特殊:

padding-toppadding-bottomborder-topborder-bottom

示例代码:行内级元素注意点_1行内级元素注意点_2

CSS 属性 - border-radius 圆角


圆角的应用十分广泛:

在这里插入图片描述

圆角半径相关的属性:border-*-*-radius

  • border-top-left-radius 左上角

  • border-top-right-radius 右上角

  • border-bottom-right-radius 右下角

  • border-bottom-left-radius 左下角

border-*-*-radius 定义的是四分之一椭圆的半径

  • 可以设置 2 个值,分别是 水平半径 和 垂直半径(不设置,就跟随水平半径的值)

    在这里插入图片描述

border-top-left-radius: 55pt 25pt 效果如下:在这里插入图片描述

  • 还可以设置百分比

    在这里插入图片描述

    参考的是 border-box 的宽度和高度(即元素实际占用尺寸 border + padding + width\height)


border-radius 是一个缩写属性:

在这里插入图片描述

斜线 / 前面是水平半径,后面是垂直半径

4 个值的顺序是 top-lefttop-rightbottom-rightbottom-left(顺时针方向)

  • 如果 bottom-left 没设置,就跟随 top-right

  • 如果 bottom-right 没设置,就跟随 top-left

  • 如果 top-right 没设置,就跟随 top-left

注:border-radius 大于或等于 50% 时,就会变成一个圆:

在这里插入图片描述

示例代码:border-radius

CSS 属性 - outline

===================================================================================

outline 表示元素的外轮廓

  • 不占用空间

  • 默认显示在 border 的外面

  • 每个部位都是完整连接的,不会像 border 那样有可能会断开(比如行内级非替换元素的换行)

outline 相关属性:

  • outline-width

  • outline-style:取值跟 border 的样式一样,比如 solid、dotted 等

  • outline-color

  • outlineoutline-widthoutline-styleoutline-color 的简写属性,跟 border 用法类似

  • outline-offset:设置 outline 和 border 之间的间距

outline 应用实例:

  • 去除 a 元素、input 元素的 focus 轮廓效果

示例代码:outline

CSS 属性 - box-shadow

======================================================================================

box-shadow 属性可以设置一个或者多个阴影

  • 每个阴影用 <shadow> 表示

  • 多个阴影之间用逗号 , 隔开,从前到后叠加

  • <shadow> 的常见格式如下:

在这里插入图片描述

  • 第 1 个 <length>:水平方向的偏移,正数往右偏移

  • 第 2 个 <length>:垂直方向的偏移,正数往下偏移

  • 第 3 个 <length>:模糊半径 (blur radius)

  • 第 4 个 <length>:延伸距离

  • <color>:阴影的颜色,如果没有设置,就跟随 color 属性的颜色

  • inset:外框阴影变成内框阴影

box-shadow 示例:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

示例代码:box-shadow

在这里插入图片描述


练习:

在这里插入图片描述

代码:box-shadow 练习

CSS 属性 - text-shadow

=======================================================================================

text-shadow 用法类似于 box-shadow,用于给文字添加阴影效果

text-shadow 同样适用于 ::first-line::first-letter

示例代码:text-shadow

CSS 属性 - box-sizing

======================================================================================

box-sizing 用来设置盒子模型中宽高的行为

  • content-box

    padding、border 都布置在 width、height 外边

    在这里插入图片描述

    元素的实际占用宽度 = border + padding + width

    元素的实际占用高度 = border + padding + height

  • border-box

    padding、border 都布置在 width、height 里边

    在这里插入图片描述

    元素的实际占用宽度 = width

    元素的实际占用高度 = height

盒子模型历史遗留问题

在这里插入图片描述

示例代码:box-sizing


最后

为什么我不完全主张自学?
平台上的大牛基本上都有很多年的工作经验了,你有没有想过之前行业的门槛是什么样的,现在行业门槛是什么样的?以前企业对于程序员能力要求没有这么高,甚至十多年前你只要会写个“Hello World”,你都可以入门这个行业,所以以前要入门是完全可以入门的。
②现在也有一些优秀的年轻大牛,他们或许也是自学成才,但是他们一定是具备优秀的学习能力,优秀的自我管理能力(时间管理,静心坚持等方面)以及善于发现问题并总结问题。
如果说你认为你的目标十分明确,能做到第②点所说的几个点,以目前的市场来看,你才真正的适合去自学。

除此之外,对于绝大部分人来说,报班一定是最好的一种快速成长的方式。但是有个问题,现在市场上的培训机构质量参差不齐,如果你没有找准一个好的培训班,完全是浪费精力,时间以及金钱,这个需要自己去甄别选择。

我个人建议线上比线下的性价比更高,线下培训价格基本上没2W是下不来的,线上教育现在比较成熟了,此次疫情期间,学生基本上都感受过线上的学习模式。相比线下而言,线上的优势以我的了解主要是以下几个方面:
①价格:线上的价格基本上是线下的一半;
②老师:相对而言线上教育的师资力量比线下更强大也更加丰富,资源更好协调;
③时间:学习时间相对而言更自由,不用裸辞学习,适合边学边工作,降低生活压力;
④课程:从课程内容来说,确实要比线下讲的更加深入。

应该学哪些技术才能达到企业的要求?(下图总结)

Java全套资料免费领取方式:戳这里

量参差不齐,如果你没有找准一个好的培训班,完全是浪费精力,时间以及金钱,这个需要自己去甄别选择。

我个人建议线上比线下的性价比更高,线下培训价格基本上没2W是下不来的,线上教育现在比较成熟了,此次疫情期间,学生基本上都感受过线上的学习模式。相比线下而言,线上的优势以我的了解主要是以下几个方面:
①价格:线上的价格基本上是线下的一半;
②老师:相对而言线上教育的师资力量比线下更强大也更加丰富,资源更好协调;
③时间:学习时间相对而言更自由,不用裸辞学习,适合边学边工作,降低生活压力;
④课程:从课程内容来说,确实要比线下讲的更加深入。

应该学哪些技术才能达到企业的要求?(下图总结)

Java全套资料免费领取方式:戳这里

[外链图片转存中…(img-lutGP3Xj-1628430104090)]

[外链图片转存中…(img-IvGWwPSI-1628430104092)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值