css面试题

CSS部分

1. IE盒模型和标准盒模型

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

可使用CSS属性来切换IE盒模型和标准盒模型:

box-sizing:border-box || content-box || inherit
  • 当使用content-box时:页面将采用标准模式来解析计算,content-box也是默认模式
  • 当使用border-box时,页面将采用怪异模式解析计算,怪异模式也称为IE模式
  • 当使用inherit时:页面将从父元素继承box-sizing的值

参考资料:https://www.jianshu.com/p/cc2bc404269b

2. px、em、rem区别

px是固定的像素,一旦设置了就无法因为适应页面大小而改变。

em和rem相对于px更具有灵活性,他们是相对长度单位,意思是长度不是定死了的,更适用于响应式布局。

对于em和rem的区别一句话概括:em相对于父元素,rem相对于根元素。

**chrome设置的最小字体大小为12px,意思就是说低于12px的字体大小会被默认为12px,**当然这一尬境可以由css3解决,这里就不多说了。

em

  • 子元素字体大小的em是相对于父元素字体大小
  • 元素的width/height/padding/margin用em的话是相对于该元素的font-size

rem

rem是全部的长度都相对于根元素,根元素是谁?<html>元素。通常做法是给html元素设置一个字体大小,然后其他元素的长度单位就为rem。

3. 实现左、中、右三列布局

实现一个左、中、右三列布局,两边宽度固定,中间自适应

使用绝对定位:

<style>
  .father { position: relative; height: 400px; }
  .father > div {
    border: 1px solid;
    position: absolute;
    height: 100%;
    top: 0;
  }
  .son1 { left: 0; width: 200px; }
  .son2 {
    left: 200px;
    right: 200px;
    background-color: rgba(33, 33, 186, 0.2);
  }
  .son3 { right: 0; width: 200px; }
</style>
<div class="father">
  <div class="son1">左边</div>
  <div class="son2">中间中间中间中中间</div>
  <div class="son3">右边</div>
</div>

使用float:

<style>
  .father { height: 400px; }
  .father > div {
    border: 1px solid;
    height: 100%;
    box-sizing: border-box;
  }
  .son1 { float: left; width: 200px; }
  .son2 {
    background-color: rgba(33, 33, 186, 0.2);
    margin: 0 200px;
  }
  .son3 { float: right; width: 200px; }
</style>
<div class="father">
  <div class="son1">左边</div>
  <div class="son3">右边</div>
  <div class="son2">中间中间中间中中间</div>
</div>

参考资料:css中单位em和rem的区别

相关推荐

  1. CSS3 面试

    2024-06-18 05:46:01       63 阅读
  2. CSS 高频面试

    2024-06-18 05:46:01       52 阅读
  3. CSS面试

    2024-06-18 05:46:01       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-18 05:46:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-18 05:46:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-06-18 05:46:01       82 阅读
  4. Python语言-面向对象

    2024-06-18 05:46:01       91 阅读

热门阅读

  1. MySql修改最大连接数

    2024-06-18 05:46:01       40 阅读
  2. 系统安全!

    2024-06-18 05:46:01       32 阅读
  3. 2.负载压力测试

    2024-06-18 05:46:01       29 阅读
  4. 工具清单 - IDE工具

    2024-06-18 05:46:01       44 阅读
  5. 随笔——顺序表专题

    2024-06-18 05:46:01       128 阅读
  6. Compose 可组合项 - 抽屉式导航栏 Drawer

    2024-06-18 05:46:01       33 阅读
  7. CentOS:安装NodeJs

    2024-06-18 05:46:01       28 阅读
  8. 家庭教育孩子的十大方法!家长一定要知道

    2024-06-18 05:46:01       39 阅读
  9. 反悔贪心,LeetCode 2813. 子序列最大优雅度

    2024-06-18 05:46:01       35 阅读