QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2182|回复: 0
打印 上一主题 下一主题

HTML 知识点(未完)

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2020-5-5 14:53 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    HTML 知识点(未完)) P, r' y. Y$ D2 X2 `. q

    ! K/ K5 E9 U- {' wHTML 知识点  p6 I1 N! W& b' Y

    . W+ S* V$ N! S( \  |三列布局- (高度已知,左右宽度固定,中间自适应)1 n0 T- ^/ {  I1 x

    & s: E1 r0 @; U布局方案        优点        缺点6 M- y( X1 n/ X  m
    浮动        兼容性好        脱离文档流,需清除浮动
    * S/ A, B2 p1 x; o绝对定位        比较快捷。        因为其本身脱离了文档流,导致了其子元素都脱离了文档流,使用性较差。
    5 S" q. _. E6 N7 P1 Q4 z# F; Yflex布局        目前是比较完美的方案。        只兼容到ie9。
    # ?/ L8 g8 u" C! Y, k0 d1 C表格布局        兼容性好,当需要兼容ie8时可以用表格布局。        多栏布局时,某栏高度增加,会使其他栏高度一起增加。
    % t! p+ Q5 t; a' B网格布局        新技术,代码量少       
    0 u& N+ }! I( _8 ?' ~) ]<!-- 网格布局 -->
    ; E) a$ {2 [# o4 ]+ V1 k" j$ ]<body>
    ' h0 j, s( U  v3 H) \    <section class="layout grid"> - e+ {5 r; H* _! Q1 L/ p2 f+ L
            <style media="screen">8 T5 j. R/ V, l0 M1 E6 v
                .layout.grid .left-right-center{
    - I5 f5 @$ x. P) U                display: grid;
    . N' j. j6 O! f                width: 100%;4 a0 p7 {+ t: e- l8 u% J. I% [2 h
                    grid-template-rows: 100px; // 设置行高  n0 W( K$ ]' f. f5 y
                    grid-template-columns: 300px auto 300px; // 设置每列的宽度
    $ ^9 ?6 z2 R; w! g) ?6 {$ Y
    $ Z: m) ~! u: ]5 {! E' D! ]/ i1 D        </style>
    * W% c* i8 k% |: q" J' ?' w7 Q            <article class="left-right-center">, A9 `6 X6 l" G# W1 O; o4 ^9 B
                <div class="left"></div>
    5 \( L* @- R0 h+ q5 d            <div class="center"></div>3 D& [  Y8 e% R! I
                <div class="right"></div>
    # |# C% V* e! \# g$ e        </article>
    * E) I6 ~/ F" g9 L    </section>. d3 |8 g, _  C2 F$ k/ E- l6 ?
    </body>' a7 X9 ]6 Z" }( B0 s5 ^

    " w# ?. h6 D4 `1 L. hcss盒模型7 S! x4 @" V+ V. M; ~  y( O

    4 ?) R4 n$ F* ~& [# gCSS盒模型的认识7 Q3 k: d, q( T3 c( O7 B. s
    % R% u3 p$ ]6 s
    css属性: content padding border margin
    1 R/ M1 V% B; d8 F" x3 h3 W! h: B) [  ]' a" U% x" o! H
    两种模型:IE盒模型(怪异盒模型)和 标准盒模型
    , Y% P& y2 r! q$ |' ~; B- A" o+ _4 y& K/ @8 Z" J' K- b/ V
    两种模型的区别:计算高度和宽度的不同
    - i1 D) G+ v6 F
    $ _2 ~% e  L- ^+ E6 M. d! ~两种模型如何设置:box-sizing: content-box(标准盒模型); box-sizing: border-box(IE盒模型)
    7 ^9 i8 [& V9 @0 q3 V  y4 ^) Z( Q" e# P' O
    JS如何设置获取盒模型对应的宽和高6 N/ D( n3 H: T( N! z3 B" K; `

    ! G& U" t- ~  E/ z8 S# n获取方式        优缺点
    8 ?; T2 n4 n1 W/ `dom.style.width/height        只能获取内联样式设置的宽和高
    4 d: F9 N) k% b: Z: `; idom.current style.width        获取浏览器渲染后的宽和高,只支持ie
    1 c/ @: J3 ]9 x9 K( X1 }+ jwindow.getcomputedstyle(dom).width        兼容性更好! Z- \& p2 _, y; q  f) N
    dom.getboundingclentreact().width        适用于取元素的绝对位置。能取到 left top width height 四个属性 。// 获取浏览器渲染后的宽和高一般用于获取元素绝对位置. s. s/ c+ i& F* n& o
    实例题 (根据盒模型解释边距重叠)子元素边距成了父元素边距: K, }. `: ?/ u& J4 l

    ! K; \8 b  y- _  w块级元素包含了子块级元素,子元素是100像素/ h* f1 t9 a5 n/ n
    子元素与父元素上边距是10像素
    , a- A6 k2 N$ W& X7 `. s+ o% Z父元素是110px还是100px (100px, 设置了overflow:hidden就成了110px)
    / J& L& |4 p) O, o) B0 s/ {另一种兄弟块级元素-
    2 t/ D- z! I% @0 q4 I' v  q: \: R% B' f1 `' }( j
    挨着每个都有上边距或每个都有下边距。-
    4 d& D: `' J) D7 m. A该重叠的原则就是取最大值
    / Z: k, ~+ I/ _/ T8 Z空元素的边距-取margin-top和margin-bottom的最大值
    ( \( [% v6 S2 u' @$ }解决方案:' y( P* o' Z$ u: K; @- Z# |) I3 _

    % q$ [% m, q$ \) U8 s% k父元素创建成一个BFC (无论父子,兄弟情况)$ o" [- r+ U# w' H, z7 I. ~
    4 j2 B/ R$ @- h) v% Y
    4. BFC (边距重叠解决方案)) T( m' W# y" G6 ]: s
    3 H" p& ?' C! p0 ?5 u6 l, r
    BFC(边距重叠解决方案)
    $ l' E4 t/ |, r5 }- W( q. P( }8 B/ S8 s. y8 s9 N+ i: P
    1、BFC的基本概念: 块级格式化上下文;
    , X5 |9 Y6 E; f4 D4 u7 p( `/ z; p$ \% ~
    2、BFC的原理:BFC的渲染规则。
    % M2 ], G& c% p' @8 m$ _5 y" h1 `/ Z$ V6 R7 d' E  \+ B
    ①:在BFC这个元素的垂直方向的边距会发生重叠。(同一个BFC下外边距会发生重叠)1 B8 c4 D& I* |! o$ U
    4 P" w1 L8 K& Z' T( S
    ②:BFC的区域不会与浮动元素的box重叠。(清除浮动)5 J6 S6 f& z, d5 _( J3 m
    " v) C6 [& w1 Y) s1 B5 c: o" q* O
    ③:BFC在页面上是一个独立的容器,外面的元素不会影响里面的元素,里面的元素也不会影响外面的元素。0 s' T& B9 o' C4 X6 Q

    8 B0 A) _. H, I1 J+ k6 m7 P! F④:计算BFC高度时,浮动元素也会参与计算
    1 S/ P7 K* ^! j7 w9 [+ R7 z0 A& U' e* W. i7 O( d
    3、如何创建BFC, }8 w/ c! ?( \+ X/ P8 @1 y

    & L; Y1 R. [$ ?9 C0 ]①:float不为none。
      n  W- r1 D: A& U# ?  p
      a1 r; l5 b( t1 k% ]②:position不为static或者relative。
    ! B: t, m* k7 C2 Y, i. d9 R* }
    % \/ b  B) L9 t/ d8 c9 o% n% `③:display为inline-block或者是table相关的。
    : Y* t9 ?: S! B# v3 s0 K$ j
    0 g& M- |' W5 |2 U④:overflow不为visible。
    5 a0 D2 V+ ]* d8 y! K* X3 S6 [  K2 h8 S6 q# @2 I/ W
    ⑤ : body 根元素
    + W& J* N3 U$ G$ M( M" d, L9 y& ?' N7 ?$ u# T* z! v( T
    应用场景:
    6 F) y0 O5 w# A6 p8 i% g* R* I左右布局时,float 4 b; @: ?: o2 V; F3 s
    相邻div使用margin产生边距重叠( x. m7 I% t  X' v- j" F
    dom事件6 F# c- q  B; V$ u

    : g3 a: E1 z, T; Z基本概念: DOM事件的级别
    2 K# f/ C9 v& p, V9 d, |
    & O, ]  e, S, f' Z7 q+ kDOM0: element.οnclick=function()
    ! W$ r& \+ X# f( a! t+ w
    9 D+ B! V! k( d  aDOM2: element.addEventListener(‘click’, function(){}, false)6 Q( n2 I; \& m7 W5 _

    3 q! ?# j0 k6 c) M/ Y/ ZDOM3: element.addEventListener(‘keyup’, function(){}, false)8 F. p' p6 z! p: b* t0 l

    2 W2 t5 m0 h. ]DOM事件模型
    2 ^* W( _$ u, D$ V; _  R  u) u7 ^! |! d; t+ n7 E! S7 o5 U. H
    event.target 2. event.currentTarget4 j8 V6 A, y5 e! Y3 v. ?. G
    event.target指向引起触发事件的元素,而event.currentTarget则是事件绑定的元素1 w- D1 u! z# {+ @; m. w
    DOM事件流
    1 h& l. t8 g1 T& h4 q% c( P- Z- `, s
    事件流 -->《捕获》 2. 目标阶段 3. 冒泡9 X1 P0 t1 L" n, J% r# e; m
    描述DOM事件捕获的具体流程9 s6 J, ?5 |5 O9 S8 @. o. G  e# G: h
    8 k1 U2 h1 o) ]
    window 2. document 3. html 4. body 5. 按html结构 6. 目标元素
    2 n' I3 w2 s5 l' f8 y' K, N+ X0 ^Event对象的常见应用
    3 X0 Q/ r6 i/ _+ {5 `* e2 B8 G+ K1 ?8 y0 x! A8 V7 z0 r8 v
    e.preventDefault() 2. e.stopPropagation() 3. e.stopImmediatePropagation() 4. e.currentTarget() 5. e.target()$ x& c$ @4 O! Q3 B' Y2 D: O5 x
    自定义事件3 G7 \* t: ^9 q& e

    5 k. r$ y; o( R: s5 kvar eve = new Event('custome');
    7 x% W9 L: s( u6 Tev.addEventListener('custome', function() {: l; K# I: V9 D2 M% M
        console.log('custome');
    $ E5 C0 b1 {, k5 [});
    7 Z, u7 Y$ Z) E7 S9 @6 Rev.dispatchEvent(eve);8 N8 r3 E$ _  `8 J
    1- [" O, v, W% U- u( f  y8 B7 m8 X
    27 k4 w. r5 g5 C; ?- G
    3
    ! o5 Q( F6 I5 O9 J/ W4 }4
    $ w+ @$ |. y" l' I* D: D% H5; O9 m% q/ y7 `* ^  G
    http协议2 R7 }2 t$ |9 K4 {

    ) o; o7 r/ C: a2 ~( UHTTP协议的主要特点
    . u- R: a2 b4 b5 ]& g6 [3 X% e$ c4 k* b
    简单快速(资源的URI是固定的,输入URI)、灵活(头部分有不同数据类型,一个http协议不同传输)、
    ! s% r4 q) v% v: F3 R0 F! v, y5 L
    无连接(连接一次就断掉)' s+ M0 o' x( L) o  ]) p8 v
    无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。
    4 f6 `1 J: D- W: [. k: \6 Q2 Q无状态(两次连接身份)
    ! f1 J: [- W2 A5 V! K是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传
    # s4 Y0 _+ U) i7 {9 p! JHTTP报文的组成部分2 x7 x1 @' r; M

    : D- @" b* E$ u, L2 A请求报文( C3 {) `/ O1 _4 W  s) t4 c% n$ |
    8 \* L* A/ g0 M* s$ l% Q4 m% t
    请求行 请求头 空行 请求体- r4 a8 ?5 Y- Z  x9 Q1 [8 m

    3 G& l4 T8 u# X5 x: W! N) ]响应报文5 J% Q' W, |; n$ {1 {6 u: \: w" G

    5 G/ x. z& U  Q# Z2 A# N" ?3 _状态行 响应头 空行 响应体
    : y9 e! i9 J$ |4 @; i& R! v9 u6 X& f& `
    HTTP方法
    , C; X$ y: r+ H3 i/ h* y2 y
    , E% c( D; i  u4 }$ b方法名        方法作用        注意; @+ @/ w8 g% p4 P$ z% y# ]
    GET        获取资源          s, V$ J2 S7 t" h, f9 T
    POST        传输资源       
    # P. O; V' ~% [1 q4 NPUT        更新资源       
    ; F8 Q  w0 ]7 l+ ?8 u% qDELETE        删除资源       
    3 M6 q9 |- ~) Q5 i& CHEAD        获得报文首部        5 f( i: l' {& j! b  a
    POST和GET的区别% h" z) O. c8 ^; @4 R# A
    & A+ b4 X) s" L3 D- l' a5 {! i* o
    get        post9 d8 x3 d% I% L; F. s% W
    在浏览器回退时是无害的        会再次提交请求
    6 `4 G! A& O8 ^! [1 K7 \" X产生的URL地址可以被收藏        post不可以
    5 ^% y# d) ]- e4 B7 j& n$ F请求会被浏览器主动缓存        不会,除非手动设置5 S! ^4 r- E0 K
    只能进行url编码        支持多种编码方式' P: q7 A2 o; I, t7 f0 J$ C
    请求参数会被完整保留在浏览器历史记录里        参数不会被保留2 K" C0 s. J3 }+ w; o
    请求在URL中传送的参数是有长度限制的        没有限制
    * S' ^$ W- D4 \) F/ r对参数的数据类型,get只接受ASCII字符        没有限制
    ' x6 L3 E. W: T' F, j3 i, Q更不安全,因为参数直接暴露在URL上,所以不能咏柳传递敏感信息        没暴露
    " y; I7 B+ C/ }# Y, C参数通过URL传递        放在Request body中
    " D) e* W; d' tHTTP状态码
    ( w8 s8 o4 d! K+ y$ M& ]3 Y
    * \8 \  ~- E! Q状态码        意义  l$ o# E5 g2 D0 u8 i
    1xx        指示信息 - 表示请求已接收,继续处理。. N* [. Q2 |( @5 @0 `
    2xx        成功 - 表示请求已被成功接收。
    ! d8 B& G8 c4 Z& W7 l3xx        重定向 - 要完成请求必须进行更进一步的操作。
    % U% U* \) f4 w  ^4xx        客户端错误 - 请求有语法错误或请求无法实现。, W( N1 s  V4 x! B( `
    5xx        服务器错误 - 服务器未能实现合法的请求。
    0 G% T8 y" Q" c' r0 ^% r状态码        意义
    % D# ~5 }" o" _1 a200 OK        客户端请求成功
    4 t1 N8 q: m' u7 P8 F7 s206 Parital Content        客户发送了一个带有Range头的GET请求,服务器完成了它1 i- ]' ^* P# ?; M9 e3 U( G2 E
    301 Moved Permanently        所请求的页面已经转移至新的url
    2 x& t* h/ B$ M) a" x302 Found        所请求的也么已经临时转移至新的url
    + O+ w9 v" |3 E& G1 \304 Not Modified        客户端有缓冲的文档并发出了一个条件性的请求, 服务器告诉客户,原来缓冲的文档还可以继续使用1 {$ g6 ?2 l- i. V6 t
    400 Bad Request        客户端请求有语法错误,不能被服务器所理解( T# O2 Q  K% r* H3 G
    401 Unanthorized        请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
    1 c2 F- H; Z/ W0 o" E403 Forbidden        对被请求页面的访问被禁止' \- e9 l$ K/ d/ P" Y
    404 Not Found        请求资源不存在
    - X/ R5 l/ Z" C500 Internal Server Error        服务器发生不可预期的错误原来缓冲的文档还可以继续使用
    / r3 Z. R' k/ r# x$ t503 Server Unavaliable        请求未完成, 服务器临时过载或当机,一段时间后可能恢复正常$ x( s. }+ o0 A3 r4 S' Z: Z6 [8 c" u
    什么是持久连接
    ) K$ V0 m( a, M% Y- K/ F3 ?. I+ Y" W# `) D' S6 ^' p/ o5 ?
    HTTP协议采用“请求-应答”模式,当使用普通模式,即非Keep-Alive模式时, 每个请求/应答客户和服务器都要新建一个连接,完成之后立即断开连接(HTTP协议为无连接的协议)
    : O' b, |( j+ L$ O9 @  D# d0 G# \; |) [) t; I9 S; O8 h; p/ \
    当使用Keep-Alive模式(又称持久连接、连接重用)时, Keep-Alive功能使客户端到服务器端的连接持续有效,当出现对服务器的后继请求时,Keep-Alive功能避免了建立或者重新建立连接。
    # M; H* A# G, S& d/ d' I7 }. S+ N
    使用了持久连接
    4 f) N( Q% \: f: E% Z, h* X& P/ o
    & X" s0 h3 }7 l6 {+ f% p  b请求1->响应1->请求2->响应2->请求3->响应3
    $ O# t0 I- w) ^5 m/ N8 l/ J1 Q! Z6 |" c. @9 G% C
    变成了
    # \: c' s% R  o; D2 p8 o4 U6 v! K  l9 H# |
    请求1->请求2->请求3->响应1->响应2->响应3
    + Y0 p5 z2 Q! n( k" ]7 H* V/ W/ F) _/ h  m
    什么是管线化0 ?+ q+ r: i4 U/ a+ O8 u
    ' c, {) @+ R  s0 @' u& ?
    管线化通过持久连接完成,仅http/1.1 支持此技术- f; Y$ A" S# ~9 M) m( r' ]# P' S
    只有get和head请求可以进行管线化,而post则有所限制
    ' s; a) k  a* r# {$ V9 t初次创建连接不应启动管线机制,因为对方(服务器)不一定支持HTTP/1.1版本的协议
    ) H* G( {" @( f* {  d5 y) w7 e; j) Y% U
    安全
    / L! p$ a4 H+ Y" K, }- P6 Z1 Q$ n- K) @( j+ l: z- ^0 L5 m: u' }
    CSRF$ W1 b& u! s7 a& Z# o
    基本概念和缩写
    9 V  ]" a& W& q% ?0 QCSRF, 通常称为跨站请求伪造,英文名Cross-site request forgery 缩写CSRF。
    $ {4 D' ]  U8 ^7 H* g# B* Q攻击原理
    " p% Z+ K& S4 p2 [$ T访问网站B时,网站B引诱点击链接,用户浏览器携带的cookie就被网站B的某些代码访问了。7 f. l' G& v2 r% k; x1 Q
    这利用了web中用户身份验证的一个漏洞:简单的身份验证只能保证请求发自某个用户的浏览器,却不能保证请求本身是用户自愿发出的。7 z/ q; v7 p9 G' u$ A! B
    XSS1 \* G% }% v2 c/ |- `
    基本概念和缩写
    8 O& Y' s8 U) Q6 D( K. S# SXSS, 跨站脚本攻击, 英文名Cross Site Scripting 缩写XSS。
    & E4 ^0 C0 |+ j0 O! X/ N; d6 m攻击原理& c" _# m8 S; [: E2 g5 c
    输出脚本code+ {( N8 J" z/ B6 ?, H2 l- o. B
    跨站脚本攻击是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。# b* y3 a5 L2 p; r8 k( C+ P
    xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数。. i, e1 @( V; t" ]: F
    渲染机制类& a) a& I2 _' u7 G% ~# c
    8 a) T! q4 p! i+ a2 C
    什么是DOCTYPE及作用
      {( X& R( B# }& @! ]& @+ ?3 a& ~' o$ G9 n. i0 v
    DTD (document type definition, 文档类型定义)是一系列的语法规则,用来定义XML或HTML的文件类型。( x& g( h# U: c' j* m9 _/ F
    作用:浏览器会使用它来判断文档类型, 决定使用何种协议来解析,以及切换浏览器模式。- P0 ?' E0 t5 c
    DOCTYPE是用来声明文档类型和DTD规范的,8 l0 O6 Y. \) J2 r
    作用:一个主要的用途便是文件的合法性验证。如果文件代码不合法, 那么浏览器解析时便会出一些差错。8 ]0 B# b" q# B1 W. z/ y# f! Y
    HTML5的DOCTYPE:* E$ W5 B- |$ I5 x  `0 o7 [  V

    6 ]% u; O- K' yHTML4有严格模式和传统模式0 R; @0 a- |% {+ S9 ]) g

    ' i6 p8 l3 D4 S! I9 q( y浏览器渲染过程
    $ m" w: m' v* \. J+ S% d0 f- D0 E$ `6 b: \+ p% I7 ?
    一些概念
    7 b! F9 m& |! c& X4 u" \
    $ B8 \  Z& U7 k, R5 N9 Q- L, e) V名称        概念
    6 ], z- h# P: U& w6 N0 c6 jDOM Tree        浏览器将HTML解析成树形的数据结构。
    ; |- z3 C; x' Y! l- @7 LCSS Rule Tree        浏览器将CSS解析成树形的数据结构。/ m4 P) U% u( q2 g, Y) B* m" O
    Render Tree        DOM和CSSOM合并后生成Render Tree。* O2 \& H" S- j9 r3 B' J
    layout        有了Render Tree,浏览器已经能知道网页中有哪些节点、各个节点的CSS定义以及他们的从属关系,从而去计算出每个节点在屏幕中的位置。( k. I( J) b* Q. r1 c
    painting        按照算出来的规则,通过显卡,把内容画到屏幕上。% t; E& ^4 D# x8 m7 g5 c+ v0 b. [
    1。当用户输入一个URL,浏览器就会发送一个请求,请求URL对应的资源
    6 c$ ~0 S& @7 V0 O2。HTML解析器会将这个文件解析,构建成一棵DOM树0 A1 x: N  `. V) A& I8 m/ U. |6 }
    3。构建DOM树时,遇到JS和CSS元素,HTML解析器就将控制权转让给JS或者CSS解析器
    . A. Y8 W+ c' u$ h# K$ H9 I' b' `4。JS或者CSS解析器解析完这个元素时候,HTML又继续解析下个元素,直到整棵DOM树构建完成& m  s0 _/ m) R3 V3 J" ~
    5。DOM树构建完之后,浏览器把DOM树中的一些不可视元素去掉,然后与CSSOM合成一棵render树
    ) [# O& A2 }9 K* n6。接着浏览器根据这棵render树,计算出各个节点(元素)在屏幕的位置。这个过程叫做layout,输出的是一棵layout树& N% y2 ?3 Z8 Z$ w
    7。最后浏览器根据这棵layout树,将页面渲染到屏幕上去
    2 O' ]( R, X0 ]1
    ) s% \9 \( _; k% O6 k2
    " P3 I6 L7 ^; i' f5 Z3% V5 \5 {4 P- j* }
    4" ^- `( O: t* r* J6 N
    5
    ; q1 L3 I6 H& N6 |. ?63 V+ O( R: K6 O- [
    7
    % p7 N' h2 u$ J4 Y重排Reflow
    8 [. q& }. E5 F# j: v9 o! Y7 h* W
    2 d. u& P- S; A) h定义:当浏览器发现某个部分发生了变化影响了布局,需要倒回去重新渲染,内行称这个回退的过程叫 reflow。9 A& K6 G, p$ @
    触发Reflow:7 J% ^, |2 m* ?( S- F5 }3 k9 K& ]
    当你增加、删除、修改dom节点时,会导致Reflow或Repaint7 b/ Z! I' ?- D; Z( ]3 S* y
    当你移动DOM的位置,或是搞个动画的时候' `9 |  w8 O+ N# ^# w* f! z7 ]: G
    当你修改CSS样式的时候
    $ \! c8 s5 t6 C* h% E当你Resize窗口的时候(移动端没有这个问题),或是滚动的时候4 \- z1 x. @9 ^0 G% p
    当你修改网页的默认字体时
    * d4 O8 h; [# g: D2 T/ E重绘Repaint5 r7 i" j- |+ _- p5 C
    % ?2 R6 S  P* Z/ c: z0 k5 J
    定义: 改变某个元素的背景色、文字颜色、边框颜色等等不影响它周围或内部布局的属性时,屏幕的一部分要重画,但是元素的几何尺寸没有变。& \) y5 b, s6 P

    1 @. ^8 s4 p( V4 [8 E" `2 B) {' g触发Repaint:
    0 y& _; P& ]% s7 I" o0 Q) G
    5 F* J& @$ i! Q$ @7 S$ IDOM改动
    $ E  w+ y  D9 G5 h4 k* KCSS改动$ C/ A, p  Y% S6 o! C8 w
    ————————————————9 i1 ?; a6 _5 v0 J3 o
    版权声明:本文为CSDN博主「ton365」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。  }. ]2 O9 p, e% A
    原文链接:https://blog.csdn.net/u012015672/article/details/105931291
    9 L( \) i- {- ^7 I% V# E  z, r( M8 k: _8 z! [: P8 Q( u

    & b* d4 N& C( F5 [- _7 ?. Q
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-11 15:59 , Processed in 0.361327 second(s), 51 queries .

    回顶部