Firefox 49 para desenvolvedores
Para testar estes novos recursos do Firefox, Instale Firefox Developer Edition Firefox 49 foi lançado em 20 de Setembro de 2016. Este artigo faz uma lista das principais alterações não só para desenvolvedores web, mas também desenvolvedores Firefox e Gecko e de extensões.
Mudanças para desenvolvedores web
>Ferramentas de desenvolvimento
-
Erros de JavaScript registrados no console Agora com um link [Leia Mais] para ajuda complementar na depuração (Erro do Firefox 1179876).
-
CSS autocompletar: mostra mais sugestões para o autocompletar (Erro do Firefox 1260419).
-
O inspector de animação agora fornece informações do desempenho da animação nas ferramentas de desenvolvimento (Erro do Firefox 1254408).
-
O menu de contexto do Inspector foi reorganizado ser mais claro e fácil de usar (Erro do Firefox 1211613).
-
O Inspector agora suporta sintaxe para valores de cores em
#RRGGBBAAe#RGBA(Erro do Firefox 1271191). -
As ferramentas de desvenvolvedor deixa de exibir marcas de fechamento automático (tal como
<br>e<img>como se eles tivessem uma tag de fechamento em páginas HTML ; o comportamento é inalteravel para páginas XHTML (Erro do Firefox 820926). -
Melhorias na acessibilidade!
- A caixa de ferramenta faz um trabalho melhor em assegurar que o foco no teclado seja mais visível (Erro do Firefox 1242851).
- Foram adicionados rótulos de acessibilidade a controles não marcados (Erro do Firefox 1242715).
- Adicionada semântica de exibição de árvore adequada e navegação de teclado para a exibição de marcação do Inspetor (Erro do Firefox 1242694).
-
O Monitor de Rede agora mostra uma coluna de Causa, onde fornece e indica o que causa de cada requerimento de rede específico (Erro do Firefox 1134073).
-
Na about:debugging página de extesões, o botão de recarregar é o único abilitado para extensões temporárias. Será desabilitado para todas as outras extensões (Erro do Firefox 1273184).
-
Na página Workers em about:debbuging, uma mensagem de alerta será exibida na seção Service Workers se o service workers for incompatíveil com as configurações atuais do navegador (Erro do Firefox 1266415).
-
about:debugging agora existe uma nova página de Tabs disponível, quer fornece uma lista completa de todas abas abertas debugaveis na instancia do Firefox (Erro do Firefox 1266128).
-
A opção Desabilitar Cache na Caixa de ferramentas de configurações avançadas foi renomeada para Desabilitar HTTP Cache, para clarear que isso afeta o cache do HTTP, e não Service Workers/o Cache API (bug(1253018)).
-
O Inspector de armazenamento agora permite IndexedDB databases ser deletado através de seu próprio menu (Erro do Firefox 1205123), e mostrará uma mensagem de alerta se a IndexedDB poder ser deletada por alguma rasão (Se ainda existir conexão ativa, por exemplo) (Erro do Firefox 1268460).
HTML
- Adicionado suporte para estes elementros:
<details>e<summary>(Erro do Firefox 1226455). - O
patternatribuido para<input>agora usa o parâmetro'u'no JavaScript baseRegExp(Erro do Firefox 1227906). - Para corresponder a uma mudança específica, de um valor inválido
kindatributo do elemento<track>é agora tratado como"metadata"ao invés de"subtitles"(Erro do Firefox 1269712). - O atributo
sandboxdo elemento<iframe>agora suporta os valores 'allow-popups-to-escape-sandbox' e 'allow-modals' (Erro do Firefox 1190641). - Suporte para atributos microdata e a Microdata API foram removidas (Erro do Firefox 909633).
- O atributo
referrerpolicydo elemento<a>agora suporta esses atributos'no-referrer-when-downgrade' e'origin-when-cross-origin'(Erro do Firefox 1178337). - O
formque é atributo do elemento<label>foi removido. A propriedadeHTMLLabelElement.formainda existe, mas agora retorna o formulário na qual o controle do label's está associado , se houver um controle (e se esse controle for associado ao formulário) (Erro do Firefox 1268852).
CSS
-
Adicionado
background-position-xebackground-position-y, que permite específicar e compensar separadamente a horizontal e a vertial para melhor posicionar a imagem de fundo; eles são compentes debackground-position(Erro do Firefox 550426). -
Adicionado suporte para
as tags roundespaceparabackground-repeat(Erro do Firefox 548372). -
no
background-clip, as tagstextsão ativadas por padrão (Erro do Firefox 1264905). -
Adicionado suporte a cores específicas como o canal alpha usando 4- e 8-digitos CSS hex cor de valores (#RRGGBBAA e #RGBA) (Erro do Firefox 567283).
-
A pseudo-class
:dir()foi desprezado (Erro do Firefox 859301). -
Em nossa implementação experimental (ainda não ativa por padrão) de
clip-path, podemos agora interpolar entre valores<basic-shape>(Erro do Firefox 1110460). -
Adicionado a
unidade de comprimento q(Erro do Firefox 1274526). -
A propiedade
text-align-lastfoi desprezada (Erro do Firefox 1039541). -
Adicionado suporte para
overflow-wrap, substituindoword-wrapque ainda é suportado como nome alternativo (Erro do Firefox 955857). -
Nossa experiencia com a implementação do CSS Grids foi melhorado:
- implementado
<percentage>para as propriedadesgrid-gap,grid-row-gap, egrid-column-gap(Erro do Firefox 1266268). - Implementado suporte a layout grid layout para
align,justify-self:baselineelast-baseline(aka "baseline self-alignment") (Erro do Firefox 1221525). - Implementado alinhamento de conteúdo baseline de item em grid (Erro do Firefox 1256429).
- implementado
-
Nosso experimeto implementação de CSS Masks foi melhorado:
- A propiedade
mask-originagora usaborder-boxao invés depadding-boxcomo valor inicial, para coincidir com a especificação (Erro do Firefox 1258286). - A propriedade
mask-repeatsuporta os seguintes volumes:spaceeroundvalues (Erro do Firefox 1258626). - Corrigido o problema que impedia o atributo
mask-positionde ser animado (Erro do Firefox 1273804).
- A propiedade
-
O controle de preferências
text-emphasisfoi removido, assim o suporte para esta propiedade não pode ser mais desabilitado (Erro do Firefox 1229609).
JavaScript
- As armadilhas para ES2015 (ES6)
getPrototypeOf()esetPrototypeOf()Proxyforam implementadas (Erro do Firefox 888969). - O metodos ES2015 (ES6)
RegExp.prototype[@@match](),RegExp.prototype[@@replace](),RegExp.prototype[@@search](), eRegExp.prototype[@@split](), eRegExp[@@species]getter foram implementados (Erro do Firefox 887016). - A versão obsoleta,
sem padrão nos argumentos de flagsdoString.prototype.match/search/replacefoi remivida (Erro do Firefox 1108382). - O comportamento do metodo
Date.parse()quando analisam 2-digit years foi modificado para mais interoperável com o navegador Google Chrome (Erro do Firefox 1265136).
Interfaces/APIs/DOM
DOM & HTML DOM
- O metodo
DOMTokenList.supports()foi adicionado (Erro do Firefox 1257849). - O metodo
DOMTokenList.replace()foi adicionado (Erro do Firefox 1224186). - O caractere principal
'?'agora é ignorado no parâmetro do construtorURLSearchParams()(Erro do Firefox 1268361). - O valor retornado por
URL.origin,HTMLAnchorElement.origin, eHTMLAreaElement.originpara URL usando oblob:o esquema não está mais incorretonullmas em vez disso, a origem da URL formado pela remorção da tagblob:(Erro do Firefox 1270451). - No modo de pre-renderização, a propriedade
Document.visibilityStateagora retorna'prerender'(Erro do Firefox 1069772). - A propriedade
Window.isSecureContextfoi implantada (Erro do Firefox 1162772). - Os metodos DOM4
ChildNode.before(),ChildNode.after(),ChildNode.replaceWith(),ParentNode.append()eParentNode.prepend()foram implementados (Erro do Firefox 911477). - O metodo
TouchList.identifiedTouch()foi removido (Erro do Firefox 1188539). - Por padrão, a característica
scrollbarsWindowé habilitado quando chamadoWindow.open(). Anteriormente, quanto era altamente recomendado ativar ele, pois não era padrão (Erro do Firefox 1257887). - Adicionado o metodo experimental e non-standard do metodo
HTMLMediaElement.seekToNextFrame(), que permite bucar quadro a quadro no conteúdo do vídeo (Erro do Firefox 1235301). Equanto você é incentivado a expertimentar, dessar forma você nos ajuda a entender o quão útil ele é, não use ele em produção de código! - A propriedade
HTMLLabelElement.formagora retorna a forma com que o controle de label's foi assiciado, se houver um controle (e se esse controle for associado ao formulário). Anteriormente, labels eram diretamente associados com formulários usando essa propriedade (Erro do Firefox 1268852). - Suporte ao paramtro third de
EventTarget.addEventListener(), ou umBooleanou aEventListenerOptionsfoi adicionado (Erro do Firefox 1266164 and Erro do Firefox 1266066). - O volume do áudio relativo a
KeyboardEvent.keyforam renomeados."VolumeDown"é agora"AudioVolumeDown","VolumeUp"é agora"AudioVolumeUp", e"VolumeMute"e agora"AudioVolumeMute".Isso traz Firefox para alinhamento com os últimos rascunhos de especificações de UI Events (Erro do Firefox 1272578). Veja Code values para uma lista completa de possibilidades de códigos. - Os códigos ateriormente referidos a
"MozHomeScreen","MozCameraFocusAdjust", e"MozPhoneCall"agora tem nomes oficiais na especificação UI Events:"GoHome","CameraFocus", e"Call". Firefox 49 foi atualizado para utilizar os novos nomes (Erro do Firefox 1272599). Veja Code values para uma lista completa de possilidades de códigos - O valor dos códigos
"Separator"e"MediaSkip"foram removidos, por serem desatualizados e não utilizados (Erro do Firefox 1232919). - Valor do código e a correspondencia dos códigos
"Hyper"e"Super"foi adicionado para representar os modificadores de herança dos códigos (Erro do Firefox 1232919). - Duas teclas do teclado numérico multimídia foram adicionados:
"Key11"e"Key12"(Erro do Firefox 1232919). - Foram adicionados novos códigos para controle de audio:
"AudioBassBoostToggle","AudioTrebleDown", e"AudioTrebleUp"(Erro do Firefox 123919). - Adiconado código para controle do mocrofone:
"MicrophoneToggle","MicrophoneVolumeDown","MicrophoneVolumeUp", e"MicrophoneVolumeMute"(Erro do Firefox 123919). - Adicionado novo código de suporte a dispositivos de reconhecimento de fala: "
SpeechCorrectionList"e"SpeechInputToggle"(Erro do Firefox 1232919). - Nova tecla foi adicionada para suportar botões especiais em telefones:
"AppSwitch","Call","CameraFocus","EndCall","GoBack","GoHome","HeadsetHook","LastNumberRedial","Notification","MannerMode", e"VoiceDial"(Erro do Firefox 1232919). - Um novo botão de aplicação foi adicionado:
"LaunchContacts"e"LaunchPhone"(Erro do Firefox 1232919). - Adicionado novos códigos de suporte a dispositivos de TV:
"TV3DMode","TVAntennaCable","TVAudioDescription","TVAudioDescriptionMixDown","TVAudioDescriptionMixUp","TVContentsMenu","TVDataService","TVInput","TVInputComponent1","TVInputComponent2","TVInputComposite1","TVInputComposite2","TVInputHDMI1","TVInputHDMI2","TVInputHDMI3","TVInputHDMI4","TVInputVGA1","TVMediaContext","TVNetwork","TVNumberEntry","TVRadioService","TVSatellite","TVSatelliteBS","TVSatelliteCS","TVSatelliteToggle","TVTerrestrialAnalog","TVTerrestrialDigital","TVTimer", e"DVR"(Erro do Firefox 1232919). - O código
"MediaSelect"foi substituido pelo valor padrão"LaunchMediaPlayer"(Erro do Firefox 1272592). - Foram adicionados códigos adicionais para mídia-player. São esses
"MediaAudioTrack","MediaSkipBackward","MediaSkipForward","MediaStepBackward","MediaStepForward","MediaTopMenu","NavigateIn","NavigateNext","NavigateOut", e"NavigatePrevious"(Erro do Firefox 1232919).
Canvas
- A propriedade
CanvasRenderingContext2D.filter, que fornece suporte para adicionar foltros a uma canvas, agora é ativa por padrão e não precisa mais ser abilitado nas preferências (Erro do Firefox 1173545).
WebGL
- A extensão
EXT_color_buffer_floatWebGL 2 foi implementada (Erro do Firefox 1129332). - O evento
webglcontextcreationerror, que é criando quando a tentativa de criação de contexto do WebGL falha, foi implementado (Erro do Firefox 1271478). Use isso para ajudar a entender melhor, tanto para depuração quanto para o processamento de errros de produção.
IndexedDB
- Agora você pode renomear IndexedDB indexes; a propriedade
IDBIndex.namejá não é mais de leitura-única (Erro do Firefox 1118028). - Você também pode renomear
IDBObjectStores; a propriedadeIDBObjectStore.namejá não é de leitura-única (Erro do Firefox 1118028).
Service Workers e relatórios
- O Objeto Fetch API's
Responseagora implementa a propriedaderedirected, que indica se a resposta é para uma solicitação que foi redirecionada. Por favor ervise o relatório de segurança na documentação usanda anteriormente nessa propriedade (Erro do Firefox 1243792). - Na API de Permissões, Firefox já não suporta a palavra
PermissionDescriptorti push (referido na especificação comoPushPermissionDescriptor); Isso ocorre porque o Firefox depende de um sistema de cotas para controloar o statususerVisibleOnly, e estava lançando um erro ao encontrar uma instância doPushPermissionDescriptor(Erro do Firefox 1266821). Com essa palavra removida, o Firefox simplismente ignora.
Streams de mídia
- Antigamente, era possível chamar
MediaDevices.getUserMedia()como requerimento ambos áudio e vídeo para ter sucesso nos casos em que o usuário tem apenas um dos dois tipos de hardware disponíveis . Isso foi fixado (Erro do Firefox 802326). - Nas versões anteriores do Firefox, era possível chamar por
MediaDevices.getUserMedia()que solicita tando audio quanto vídeo para ter êxito mesmo que o usuário tenha negado acesso a um, mas não a ambos os dispositivos de correspondência. Isso foi fixado (Erro do Firefox 802326). Isso envolve pequenas alterações na interface de usuários, para remover a opção para escolher "sem áudio" ou "Sem vídeo" quando o usuário é solicitado para as permissões. - O metodo
MediaStream.getTrackById()foi implantado (Erro do Firefox 1208390).
WebRTC
- O metodo
RTCPeerConnection.addTrack()foi atualizado para permitir tracks sue não são componentes dos stream especificados a serem adicionados à conexão. Ao invés, os streams são usados para agrupar tracks na extremidade receptora da conexão (Erro do Firefox 1271669).
Novas APIs
- A API
PerformanceObserveragpra é ativa por padrão no Nightly. Isso não é atio por padrão em outras versõs do Firefox 49 (Erro do Firefox 1271487).
Outras
XMLHttpRequest.getResponseHeader()eXMLHttpRequest.getAllResponseHeaders()retornar cabeçalhos vazios caso a preferêncianetwork.http.keep_empty_response_headers_as_empty_stringesta configurado paratrue(Erro do Firefox 669259).- O Firefox OS-apenas API Banco de Dados foi removida (Erro do Firefox 1261009).
- A API de Tela Cheia manipulador de eventos
Document.onfullscreenchangeeDocument.onfullscreenerrorforam removidos deElementcomo nunca foram usados la; As versões de prefixo desses manipuladores de eventos foram mantidas lá para fins de compatibilidade, Contudo (Erro do Firefox 1270386). Observe que ele não é ativado por padrão, mas está atrás da preferênciafull-screen-api.unprefix.enabled(Erro do Firefox 1268749). - A propriedade obsoleta
Document.mozFullScreennão foi pré-fixadaDocument.fullscreenErro do Firefox 1269157}. Perceba que ela não é ativa por padrão nas preferencias thefull-screen-api.unprefix.enabled(Erro do Firefox 1268749). - A propriedade leitor
Document.fullscreenElementeDocument.fullscreenEnableddeixa de lançar exceção se hover tentativa de alterar o seu valor; ao invés disso, o novo valor é ignorado e a função setter é uma no-op (Erro do Firefox 1269798). - Qualquer tipode de dado pode ser agora recuperado da área de tranferência usada
DataTransfer.getData(): anteriormente, apenas alguns tipos de dados do tipo MIME eram suportados Erro do Firefox 860857. - Nossa implementação da API da cronometragrm de frames, consistindo nas duas interfaces
PerformanceCompositeTimingePerformanceRenderTiming, foram removidas pois as especificações foram totalmente reescritas (Erro do Firefox 1271846). - Para especificações correspondentes, a propriedade
VTTCue.positionAlignagora retorna umPositionAlignenum em vez deAlignenum (Erro do Firefox 1276129). - A parte de síntese da API Web Speech agora é ativo por padrão (Erro do Firefox 1268633).
- A API Timeline de performace agora está disponível de padrão no Nightly (embrora não no Aurora, Beta ou Release).
- O evento
install, e oWindow.oninstallmanipulador de evento, são agora suportado por Web Manifests (Erro do Firefox 1265279). - Quando usar o metodo
AudioContext.createPeriodicWave()de Web Audio API, você pode específicar se a onda periódica resultante deve ser normalizada incluindo um objeto de dicionário como o terceiro parâmetro, que inclui um único parâmetro —{disableNormalization: true}(Erro do Firefox 1265405). - Na APIWebVTT,
VTTCue.positionAlignretorna corretamente umPositionAlignSettingenum conforme a especificação; anteriormente ele retornava umAlignSettingenum (Erro do Firefox 1276129). - A parte de síntese de fala da API Web Speech agora é habilitado por padrão em todos os navegadores desktop (Erro do Firefox 1268633).
- O contrutor de API Web Animations
Animation()agora aceita null na timeline (Erro do Firefox 1096776).
MathML
Sem mudanças.
SVG
- Removido o suporte por ser considerador obsoleto os seguintes elementos:
<altGlyph>,<altGlyphDef>e<altGlyphItem>(Erro do Firefox 1260032).
Audio/Video
Sem mudanças.
HTTP
O diretiva Cache-Control: immutablefoi implantada (Erro do Firefox 1267474). Veja também essa postagem no blog para mais informações.
Networking
- A implementação do Auto-configuração de Proxy (PAC) foi atualizada. Agora
weekdayRange,dateRange, etimeRangesuportam "intervalos invertidos", por exempo,weekdayRange("SAT", "MON")avaliaretruese o dia atual é Saturday, Sunday, ou Monday (Erro do Firefox 1251332).
Segurança
- A propriedade
Window.isSecureContext, indica se o contexto é capaz de usar recursos que exigem contextos de segurança, foi implementado (Erro do Firefox 1162772).
Compatilibidade
A fim de melhorar a compatilidade com o conteúdo existente, Firefox agora aceita algumas propriedades e atributos do webkit.
-
As propriedades a seguir também trabalham com prefixo -webkit:
-webkit-align-items-webkit-align-content-webkit-align-self-webkit-animation-webkit-animation-delay-webkit-animation-direction-webkit-animation-duration-webkit-animation-fill-mode-webkit-animation-iteration-count-webkit-animation-name-webkit-animation-play-state-webkit-animation-timing-function-webkit-backface-visibility-webkit-background-clip-webkit-background-origin-webkit-background-size-webkit-border-bottom-left-radius-webkit-border-bottom-right-radius-webkit-border-image-webkit-border-top-left-radius-webkit-border-top-right-radius-webkit-border-radius-webkit-box-shadow-webkit-filter-webkit-flex-webkit-flex-basis-webkit-flex-direction-webkit-flex-flow-webkit-flex-grow-webkit-flex-shrink-webkit-flex-wrap-webkit-justify-content-webkit-order-webkit-perspective-webkit-perspective-origin-webkit-text-size-adjust-webkit-transform-webkit-transform-origin-webkit-transform-style-webkit-transition-webkit-transition-delay-webkit-transition-duration-webkit-transition-property-webkit-transition-timing-function-webkit-user-select
-
As propriedades a seguir correspondem à propriedade prefixa equivalente
-
Para valores
<image>:- As funções a seguir correspondem aos seus equivalentes não predefinidos:
-webkit-linear-gradient(),-webkit-radial-gradient(),-webkit-repeating-linear-gradient(), e-webkit-repeating-radial-gradient(). - O desatualizado
-webkit-gradienté suportado (e traduzindo para um gradiente regular)
- As funções a seguir correspondem aos seus equivalentes não predefinidos:
-
Os seguintes valores
displayforam traduzidos:-webkit-boxto-moz-box-webkit-flextoflex-webkit-inline-boxtoinline-flex-webkit-inline-flexto-moz-inline-flex
-
As seguintes propriedades são suportadas ( E não mapeia para qualquer equivalente não predefinido):
-
A interface
WebKitCSSMatrixé um nome deDOMMatrix -
Os seguintes recursos de consulta de mídia foram implementados:
-webkit-min-device-pixel-ratioé um nome paramin-resolutioncom o mesmo valor em (emdppx), embora este recurso seja disabilitado por padrão (atras de preferências no about:configlayout.css.prefixes.device-pixel-ratio-webkit)-webkit-max-device-pixel-ratioé um nome demax-resolutionpara o mesmo valor (emdppx); essa característica é destivada por padrão, atras da mesma preferência no about:config-webkit-transform-3dsempre combinando, indicando suporte a transformações 3D.
Mudanças para extensões e desenvolvedores Mozilla
>Extensões WEB
- Suporte a
historyfoi adicionado. Isso fornece acesso a histórico do navegador, com metodos disponíveis para pesquisar no histórico, obtendo informações sobre páginas visitanas anteriormente, e adicionando e removendo entradas no históricos. - Adicionado o metodo
tabs.removeCSS()para aba API. Esse metodo permite remover o CSS que foi anteriormente injetado por chamadatabs.insertCSS().
Interfaces
- No
EventTarget.addEventListener(), o valormozSystemGroup, ativa apenas com o código rodando no XBL ou no Firefox's chrome, e umBooleanque indica se o ouvinte foi adicionado ao grupo do sistema. (Erro do Firefox 1274520)
Outros
Sem mudanças!.
Outras versões
- Firefox 48 for developers
- Firefox 47 for developers
- Firefox 46 for developers
- Firefox 45 for developers
- Firefox 44 for developers
- Firefox 43 for developers
- Firefox 42 for developers
- Firefox 41 for developers
- Firefox 40 for developers
- Firefox 39 for developers
- Firefox 38 for developers
- Firefox 37 for developers
- Firefox 36 for developers
- Firefox 35 for developers
- Firefox 34 for developers
- Firefox 33 for developers
- Firefox 32 for developers
- Firefox 31 for developers
- Firefox 30 for developers
- Firefox 29 for developers
- Firefox 28 for developers
- Firefox 27 for developers
- Firefox 26 for developers
- Firefox 25 for developers
- Firefox 24 for developers
- Firefox 23 for developers
- Firefox 22 for developers
- Firefox 21 for developers
- Firefox 20 for developers
- Firefox 19 for developers
- Firefox 18 for developers