zoukankan      html  css  js  c++  java
  • 每日思考(2020/01/15)

    题目概览

    • DOM和BOM有什么区别?
    • 让网页的字体变得清晰,变细用CSS怎么做?
    • 写一个方法把0和1互转(0置1,1置0)

    题目解答

    DOM和BOM有什么区别?

    • DOM 是 Document Object Model 的缩写。即文档对象模型,遵循 W3C 制定的标准。提供了独立于内容而与浏览器窗口进行交互的对象。描述了与浏览器进行交互的方法和接口,可以对浏览器窗口进行访问和操作,譬如可以弹出新的窗口,改变状态栏中的文本。其本质就是 DOM 元素。最早使用的 document.getElementById 获取到的对象就是 DOM 对象。利用 JS 操作某个 DOM 的颜色、形状、大小都是对 DOM 元素的操作。在代码上可以理解为 document 开头的方法和属性
    • BOM 是 Browser Object Model 的缩写。即浏览器对象模型,这并没有一套规定标准,每个浏览器都有自己的实现DOM 是针对 HTML 的基于树的 API。描述了处理网页内容的方法和接口,是 HTML 的API,DOM 把整个页面规划成由节点层级构成的文档。但事实上在大部分主要的功能上都已经形成默契。BOM 主要操作浏览器的行为,比navigatorlocationhistorystorage 都为 BOM 的操作。其根对象是 window,可以理解为 winodw 开头的方法
    • 关系:DOM 在 BOM 之内,只有 JS 的宿主环境是浏览器的时候才有 DOM 和 BOM ,在 Node 中是没有这两个对象的

    让网页的字体变得清晰,变细用CSS怎么做?

    • font-weight + font-family:font-weight 来控制粗细还是需要看对应的字体有没有对应的变种字体。因此这就和 font-family 相关。

    • -webkit-font-smoothing:这个属性是 Chrome 的抗锯齿属性。加上后会显得细一些,但是只针对 webkit 内核的浏览器才有效

      -webkit-font-smoothing: antialiased
      -moz-osx-font-smoothing: grayscale
      text-shadow: 1px 1px 1px 1px rgba(0,0,0,0.005)
      text-rendering: optimizeLegibility
      

    写一个方法把0和1互转(0置1,1置0)

    //方法一
    const reverse = x => +!x
    //方法二
    const convert = num => num ^ 1;
    //方法三
    const reverse = x => ~x+2
    
  • 相关阅读:
    【装机知识】内存条知识总结
    【装机知识】主板知识整理
    【装机知识】CPU知识整理
    SHELL 学历笔记
    tmux 会话恢复(no sessions)
    数据库客户端神器(mycli/pgcli/iredis)
    golang编写二叉树
    编译安装带lua 的 vim 编辑器
    linux 下vim 开发环境配置(通用所有编程语言)
    mac 下安装mysql
  • 原文地址:https://www.cnblogs.com/EricZLin/p/12199325.html
Copyright © 2011-2022 走看看