问题
I was reading this question on disabling the dashed borders around <a>
links. Some answers used outline: none
, while some used outline: 0
Is there any difference between using outline: none
and outline: 0
?
回答1:
According to MDN:
The CSS
outline
property is a shorthand property for setting one or more of the individual outline propertiesoutline-style
,outline-width
andoutline-color
in a single declaration
So when you set outline
to none
or 0
, you are actually telling the browser to set 3 properties (outline-style
, outline-width
and outline-color
)
I used Firefox Developer Tools to find out the difference:
As you can see, they both use the default text color as the outline-color
, and they both have outline-style
set to none
. The only difference is the outline-width
:
- When the
outline
is0
, theoutline-width
is0px
- When the
outline
isnone
, theoutline-width
ismedium
That is the only difference between the two. You can use either one, they will both display the same way (since the outline-style
is none
, it does not matter how wide the outline is).
来源:https://stackoverflow.com/questions/35648667/outline-none-vs-outline-0