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
#RRGGBBAA
e#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
pattern
atribuido 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
kind
atributo do elemento<track>
é agora tratado como"metadata"
ao invés de"subtitles"
(Erro do Firefox 1269712). - O atributo
sandbox
do 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
referrerpolicy
do elemento<a>
agora suporta esses atributos'no-referrer-when-downgrade
' e'origin-when-cross-origin'
(Erro do Firefox 1178337). - O
form
que é atributo do elemento<label>
foi removido. A propriedadeHTMLLabelElement.form
ainda 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-x
ebackground-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 round
espace
parabackground-repeat
(Erro do Firefox 548372). -
no
background-clip
, as tagstext
sã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-last
foi desprezada (Erro do Firefox 1039541). -
Adicionado suporte para
overflow-wrap
, substituindoword-wrap
que 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
:baseline
elast-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-origin
agora usaborder-box
ao invés depadding-box
como valor inicial, para coincidir com a especificação (Erro do Firefox 1258286). - A propriedade
mask-repeat
suporta os seguintes volumes:space
eround
values (Erro do Firefox 1258626). - Corrigido o problema que impedia o atributo
mask-position
de ser animado (Erro do Firefox 1273804).
- A propiedade
-
O controle de preferências
text-emphasis
foi 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()
Proxy
foram 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 flags
doString.prototype.
match
/search
/replace
foi 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.origin
para URL usando oblob:
o esquema não está mais incorretonull
mas 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.visibilityState
agora retorna'prerender'
(Erro do Firefox 1069772). - A propriedade
Window.isSecureContext
foi 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
scrollbars
Window
é 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.form
agora 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 umBoolean
ou aEventListenerOptions
foi adicionado (Erro do Firefox 1266164 and Erro do Firefox 1266066). - O volume do áudio relativo a
KeyboardEvent.key
foram 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_float
WebGL 2 foi implementada (Erro do Firefox 1129332). - O evento
unsupported templ: event, 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.name
já não é mais de leitura-única (Erro do Firefox 1118028). - Você também pode renomear
IDBObjectStore
s; a propriedadeIDBObjectStore.name
já não é de leitura-única (Erro do Firefox 1118028).
Service Workers e relatórios
- O Objeto Fetch API's
Response
agora 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
PermissionDescriptor
ti 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
PerformanceObserver
agpra é 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_string
esta 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.onfullscreenchange
eDocument.onfullscreenerror
foram removidos deElement
como 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.mozFullScreen
não foi pré-fixadaDocument.fullscreen
Erro 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.fullscreenElement
eDocument.fullscreenEnabled
deixa 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
PerformanceCompositeTiming
ePerformanceRenderTiming
, foram removidas pois as especificações foram totalmente reescritas (Erro do Firefox 1271846). - Para especificações correspondentes, a propriedade
VTTCue.positionAlign
agora retorna umPositionAlign
enum em vez deAlign
enum (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
unsupported templ: event, e oWindow.oninstall
manipulador 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.positionAlign
retorna corretamente umPositionAlignSetting
enum conforme a especificação; anteriormente ele retornava umAlignSetting
enum (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: immutable
foi 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
, etimeRange
suportam "intervalos invertidos", por exempo,weekdayRange("SAT", "MON")
avaliaretrue
se 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
display
foram traduzidos:-webkit-box
to-moz-box
-webkit-flex
toflex
-webkit-inline-box
toinline-flex
-webkit-inline-flex
to-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-resolution
com 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-resolution
para o mesmo valor (emdppx
); essa característica é destivada por padrão, atras da mesma preferência no about:config-webkit-transform-3d
sempre combinando, indicando suporte a transformações 3D.
Mudanças para extensões e desenvolvedores Mozilla
Extensões WEB
- Suporte a
history
foi 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 umBoolean
que 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