吊打面试官了解一下?(上)

简介: 笔记

1. padding 与 margin


请简要描述下 padding 与 margin 有什么不同?

解析: 乍一看,这道题好像很肤浅,很简单:一个是外边距,一个是内边距,这不就是不同之处?

然而,这并不是那么那么简单,正解是:


两者的作用对象不同


外边距作用于周围元素

内边距作用于自身

如图所示:1.png


2. vw 与 % 有什么区别?


  • vw:视口大小,100vw = 全屏,50vw = 半屏(只与屏幕大小有关系
  • %:百分比大小,有继承关系,继承父级的百分之多少
  • 案例如下:

2.png

解析: 两者的父元素此时的宽度是50%(全屏的1/2)

使用 ”% “单位的会继承父级的宽度,父级为50%,它则为父级的50%(1/4 屏)

而使用 vw 的元素,不管父级宽度是多少,它只与屏幕宽度挂钩,所以它宽度仍然是1/2屏


3. 行内元素与块级元素有什么不同?

解析: 这个问题看似简单,也是很考验基础的,因为你的答案可能就是这句话:行内元素不换行,块级元素单独占用一行,这是不全面的


行内元素:

不换行

不可以设置大小

大小由内容决定

块级元素

独立成行

可以设置大小

其宽度继承父级宽度


4. 如何使一个div在body中快速居中对齐?


试题代码如下:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            html,body{
                width: 100%;
                height: 100%;
            }
            .con{
                width: 500px;
                height: 500px;
                background-color: orange;
            }
        </style>
    </head>
    <body>
        <div class="con">
            <h1>元素</h1>
        </div>
    </body>
</html>

此时此刻,你脑海里肯定浮出了许多答案:

  • 使用定位
  • 计算内外边距
  • 浮动 + 计算边距

这些答案是对的么?事实上,确实可以实现上面要求的效果,不过请注意审题:如何最快?

面试想要的是最快的,最佳的实现方式,那就必定要用到 flex布局,只需要添加两行代码即可,代码如下:

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <style>
            *{
                margin: 0;
                padding: 0;
            }
            html,body{
                width: 100%;
                height: 100%;
            }
            .con{
                width: 500px;
                height: 500px;
                background-color: orange;
                /* 此处增加一个外边距:自动 */
                margin: auto;
            }
            /* 此处给body设置为flex布局 */
            body{
                display: flex;
            }
        </style>
    </head>
    <body>
        <div class="con">
            <h1>元素</h1>
        </div>
    </body>
</html>

3.png

5. 如何用CSS绘制如下三角形?


4.png

  • 直接上代码:
#triangle-up {
    width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-bottom: 100px solid red;
}

如果三角形是这样的:

5.png

#triangle-down {
    width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 100px solid red;
}



目录
相关文章
|
4月前
|
安全 Java 编译器
面试总结
面试总结
|
8月前
|
程序员 项目管理
程序员面试,应该问面试官什么问题
程序员面试,应该问面试官什么问题
356 0
|
9月前
|
前端开发 安全 搜索推荐
【面试总结2】2
【面试总结2】
|
消息中间件 缓存 SpringCloudAlibaba
原来大厂面试官也会在这里偷偷学习!
大家好,我是冰河~~ PS:一些大厂的面试官,也在这里偷偷学习,他们经常与冰河交流技术,一起提升,一起成长!其中,某大厂的面试官也对星球提出了建议。
137 0
原来大厂面试官也会在这里偷偷学习!
|
Web App开发 前端开发 JavaScript
|
消息中间件 存储 缓存
|
移动开发 JavaScript 前端开发
2022面试不完全指南
2022面试不完全指南
93 0
面试之后,扼腕叹息。 (上)
面试之后,扼腕叹息。 (上)
110 0
面试之后,扼腕叹息。 (上)
|
前端开发 Java 开发工具
如何在一分钟内搞定面试官?
如何在一分钟内搞定面试官?
106 0
如何在一分钟内搞定面试官?
不知道怎么面试了怎么办,面试之前应该注意什么?
不知道怎么面试了怎么办,面试之前应该注意什么?
111 0
不知道怎么面试了怎么办,面试之前应该注意什么?