WebKit рдФрд░ рд╡реЗрдм рдорд╛рдирдХ

рдЕрдиреБрд╡рд╛рджрдХ рд╕реЗ : рдпрд╣ рдЧреНрд▓реЗрдЬрд╝рдореИрди рдХреЗ рд▓реЗрдЦ "рдХреЙрд▓ рдЯреВ рдПрдХреНрд╢рди: рдУрдкрди рд╡реЗрдм рдХреА рдЬрд░реВрд░рдд рд╣реИ * * рдЕрдм" рд╣реИ ред

рдХрдИ рд╕рд╛рд▓ рдкрд╣рд▓реЗ, WebKit рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╕реАрдПрд╕рдПрд╕ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред рдЪреВрдВрдХрд┐ рдпреЗ рдлрд╝рдВрдХреНрд╢рди рд╕реАрдПрд╕рдПрд╕ рдорд╛рдирдХ рдХрд╛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рдереЗ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЛрдВрдиреЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП -webkit рдЙрдкрд╕рд░реНрдЧ рдЬреЛрдбрд╝рд╛ рдХрд┐ рдпреЗ рдлрд╝рдВрдХреНрд╢рди рдХрд┐рд╕реА рднреА рд╡рд░реНрддрдорд╛рди рдФрд░ рднрд╡рд┐рд╖реНрдп рдХреА рдШреЛрд╖рдгрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдпрд╣ рднреА рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдХреЗрд╡рд▓ WebKit рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдм, рдХреБрдЫ рд╕рд╛рд▓ рдмрд╛рдж, рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдХрд┐рдВрдЧ рдЧреНрд░реБрдк рдиреЗ рдЙрди рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдХрд╛рд░рдг рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ "рдиреБрдХрд╕рд╛рди" рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЬреЛ рд╡реЗрдм-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЕрдиреНрдпрдерд╛, рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ, "рдпрд╣ рдореМрдЬреВрджрд╛ рдорд╛рдирдХреЛрдВ рдХреЗ рдЕрдиреБрдореЛрджрди рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдирд╖реНрдЯ рдХрд░ рджреЗрдЧрд╛ред"

рдЦреИрд░, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ W3C рдФрд░ CSS рд╡рд░реНрдХрд┐рдВрдЧ рдЧреНрд░реБрдк рдорд╛рдирдХреЛрдВ рдХреА рдЕрдиреБрдореЛрджрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╖реНрдЯ рд╣реЛ рдЬрд╛рдПрдЧреАред

CSS рд╡рд░реНрдХрд┐рдВрдЧ рдЧреНрд░реБрдк рдХреЗ рд╕рд╣-рдЕрдзреНрдпрдХреНрд╖, рдбреИрдирд┐рдпрд▓ рдЧреНрд▓реЗрдЬрд╝рдореИрди рдиреЗ рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдПрдХ рдЕрдкреАрд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреА , рдЬрд┐рд╕рдХрд╛ рд╢реАрд░реНрд╖рдХ рд╣реИ: "рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХрд░реЗрдВ: рдУрдкрди рд╡реЗрдм рдХреЛ рдЖрдкрдХреЛ рдЕрднреА * * рдХреА рдЬрд░реВрд░рдд рд╣реИ" ( рд░реВрд╕реА рдореЗрдВ рдЕрдиреБрд╡рд╛рдж ):

рдЖрдИрдлреЛрди, рдЖрдИрдкреИрдб рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╕рдлрд╛рд░реА рдФрд░ рдХреНрд░реЛрдо-рдЖрдзрд╛рд░рд┐рдд рд░реЗрдВрдбрд░рд┐рдВрдЧ рд╡реЗрдмрдХрд┐рдЯ рдЕрдм рдореЛрдмрд╛рдЗрд▓ рд╡реЗрдм рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рднрд╛рд╡реА рд╣реЛ рдЧрдпрд╛ рд╣реИред рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдореЛрдмрд╛рдЗрд▓ рд╡реЗрдм рдЙрди рд╕рд╛рдЗрдЯреЛрдВ рд╕реЗ рднрд░рд╛ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдХреЗрд╡рд▓ WebKit рдкрд░ рдЪрд▓рддреА рд╣реИрдВ, рдЬрдмрдХрд┐ рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ рдЙрдирдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред [...]

рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рдмрд┐рдирд╛, рдПрдХ рдордЬрдмреВрдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд┐рдирд╛, рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рд╣рдо рдЕрдм рдЦрддрд░рдирд╛рдХ рд░реВрдк рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЗ рдХрд░реАрдм рд╣реИрдВ: рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рднреА -webkit- * рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ / рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдВрдЧреЗ, рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдПрдХ рдирдП рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдорд╛рдирдХ рдореЗрдВ рдмрджрд▓ рджреЗрдВрдЧреЗред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдПрдХ рдПрдХрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рдПрдХрд╛рдзрд┐рдХрд╛рд░ рдмрди рдЬрд╛рдПрдЧрд╛ред рдПрдХ рдмрд╛рд░ рдФрд░ред рдпрд╣ рд╣рдорд╛рд░реЗ рдорд╛рдирдХреЛрдВ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдирд╖реНрдЯ рдХрд░ рджреЗрдЧрд╛ред рдХреЛрдИ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреЗрд╡рд▓ рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрдм рд╣реЛрдЧрд╛ред [...]

рдореИрдВ WebKit рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ, рдЕрд░реНрдерд╛рддреН Apple рдФрд░ Google, рд╕реЗ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдХрд┐рдВрдЧ рдЧреНрд░реБрдк рдХреЛ рдорд╛рд▓рд┐рдХрд╛рдирд╛ рд╕реАрдПрд╕рдПрд╕ рдЬреИрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реНрдг рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реВрдВ, рдЬреЛ рдЙрдиреНрд╣реЛрдВрдиреЗ рджреБрдирд┐рдпрд╛ рдХреЛ рдЕрдкрдиреЗ iOS рдФрд░ Android рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рджрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ рдУрдкрди рдХреЛ рдиреБрдХрд╕рд╛рди рдкрд╣реБрдВрдЪрд╛ рдиреЗрдЯрд╡рд░реНрдХред

рдПрдХ рд╕рд░рд▓ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП -webkit рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрд╡рд╢реНрдпрдХ рдерд╛: W3C рдФрд░ CSS рд╡рд░реНрдХрд┐рдВрдЧ рдЧреНрд░реБрдк рдЕрдкреНрд░рднрд╛рд╡реА, рдмрджрдирд╛рдо рд╕рдВрдЧрдарди рд╣реИрдВред рд╡реЗрдм рдПрдХ рдЬреАрд╡рд┐рдд, рд╡рд┐рдХрд╕рд┐рдд рдордВрдЪ рд╣реИ, рдФрд░ рд░рд╛рдЬрдиреАрддрд┐рдХ рдЪрд░реНрдЪрд╛ рдХреЗ рдмрд╛рдж рд╣рд░ 8-10 рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдорд╛рдирдХреЛрдВ рдХреЗ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдЬрд╛рд░реА рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред "рдорд╛рдирдХ рдХреЗ рд▓рд┐рдП рд╕рд┐рдлрд╛рд░рд┐рд╢" рдХреА рд╕реНрдерд┐рддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП HTML5 рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рдЫрд╣ рд╕рд╛рд▓ рд▓рдЧ рдЧрдП (рдпрд╣ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ W3C рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрднреА рддрдХ рдЕрдиреБрдореЛрджрд┐рдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ рдФрд░ рдпрд╣ 2014 рд╕реЗ рдкрд╣рд▓реЗ рдирд╣реАрдВ рд╣реЛрдЧрд╛) - рдпрд╣ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдиреБрдХрд╕рд╛рди рд╣реИред рдмрд╛рдХреА рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдЙрджреНрдпреЛрдЧ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЧрддрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдорд╛рдирдХреАрдХрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

WebKit рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдЬреЛ рд╣рд╛рд▓ рд╣реА рдореЗрдВ -webkit рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХреА рдЧрдИрдВ, рджрд╕ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реА CSS рд╕рдВрд╡рд░реНрджреНрдзрди рд╣реИрдВ, рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рдореВрд╣ рдХреЗ рд╕рд╣-рдЕрдзреНрдпрдХреНрд╖ рдЙрдиреНрд╣реЗрдВ "CSS рдЬреИрд╕реА рдЧреБрдг" рдХрд╣рддреЗ рд╣реИрдВред рдпрджрд┐ WebKit рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ CSS рдорд╛рдирдХ рдХреЗ рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╕реНрд╡реАрдХреГрддрд┐ рдФрд░ рдЕрдиреБрдореЛрджрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рдереЗ, рддреЛ рдЗрд╕рдореЗрдВ рдФрд░ рджрд╕ рд╕рд╛рд▓ рд▓рдЧреЗрдВрдЧреЗред WebKit рдореЗрдВ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛, рд╡реЗрдм рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмрджрддрд░ рд╣реЛ рдЬрд╛рддрд╛ред рдореИрдВ рдЦреБрдж рдЕрдкрдиреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ WebKit рдореЗрдВ рдХрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯ CCS рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ , рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд▓реЗрдЦ рдХреЗ рджрд╛рдИрдВ рдУрд░ рдХреБрдбреЛрд╕ рдмрдЯрди, рдЬрд┐рд╕реЗ рдХрд░реНрд╕рд░ рдХреЛ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рд╡рд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ CSS рдПрдиреАрдореЗрд╢рди рдЧреБрдгреЛрдВ рдкрд░ рдмрдирд╛ рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ WebKit рдХреЗ рд▓рд┐рдП рд╡рд░реНрдгрд┐рдд рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдП рдЧрдП рдереЗред

Glazman рдХрд╛ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдПрдХ рдЕрдкреНрд░рднрд╛рд╡реА, рдмрдВрдж рд╕рдВрдЧрдарди рдХрд╛ рдПрдХ рджреБрдЦрдж рдкрдХреНрд╖ рдкреНрд░рднрд╛рд╡ рд╣реИред рдпрд╣ рд╡рд┐рдлрд▓рддрд╛ рдХреА рдорд╛рдиреНрдпрддрд╛ рд╣реИред рдпрджреНрдпрдкрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рд╕рднреА рдкреНрд░рдореБрдЦ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╕рдореВрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдерд╛ред рд╕рдВрдЧрдарди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╣ рдХреНрдпрд╛ рдХрд╣рддрд╛ рд╣реИ?

рднрд╡рд┐рд╖реНрдп

рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░, рдФрд░ рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рдЬрд▓реНрдж, рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╡реЗрдм рдХреЗ рд▓рд┐рдП рдорд╛рдирдХреЛрдВ рдХреЛ рдЕрдкрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЙрд╕реЗ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд┐рд╡рд╛рджреЛрдВ рдФрд░ рдиреМрдХрд░рд╢рд╛рд╣реА рдХреЗ рдХрд╛рд░рдг рджрд╕ рд╕рд╛рд▓ рдХрд╛ рдЕрдВрддрд░рд╛рд▓ рд╣рд░ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ W3C рдорд╛рдирдХ рдХреЗ рд▓рд┐рдП рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред рдорд╛рдирдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдЧрддрд┐ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ рдЕрдЯрдХреЗ рд╣реБрдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╕реНрд╡рдпрдВ рдХрд╛рд░реНрдп рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдПрдХ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдЧреАред

рд╡реЗрдм рдирд┐рд░реНрдорд╛рдг рдЕрднреА рддрдХ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рд╡реЗрдм рдХреЛ рдЖрддреНрдордирд┐рд░реНрдгрдп рдХреЗ рд▓рд┐рдП рддреЗрдЬреА рд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдкрд╣рд▓рд╛ рдХрджрдо рдПрдХ рдорд╛рдирдХ рд╕рдВрдЧрдарди рддреИрдпрд╛рд░ рдХрд░рдирд╛ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рддреЗрдЬреА рд╕реЗ рдЪрд▓ рд░рд╣реЗ рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдкреВрд░рд╛ рдХрд░ рд╕рдХреЗред

Source: https://habr.com/ru/post/In138004/


All Articles