Chrome中的SELECT边框呈现3D [英] SELECT border in Chrome renders 3D

查看:109
本文介绍了Chrome中的SELECT边框呈现3D的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我有一个简单的下拉菜单,就像这个...

 < select> 
< option value =1>选项1< / option>
< / select>

...并且我想应用平坦边框(无3D效果),所以我使用:

  select {
border:1px solid #CCC;
}

请参阅实时示例: http://jsfiddle.net/GqGr3/



它工作正常在Firefox和IE:



Firefox http://www.re-moto.com/usuario/select -1.png



但它在Chrome中呈现3D:

Chrome http://www.re-moto.com/usuario/select-2.png



这就是它在我的电脑中的工作原理。我在第二台计算机上测试了它,并呈现OK。如果发生这种情况,我也会遇到其他用户。



我没有在Chrome中安装任何扩展程序,并且浏览器是最新的(18.0.1025.151这些是样本的计算样式(包括继承),我没有看到任何奇怪的东西:

  -webkit-animation-delay:0s; 
-webkit-animation-direction:normal;
-webkit-animation-duration:0s;
-webkit-animation-fill-mode:none;
-webkit-animation-iteration-count:1;
-webkit-animation-name:none;
-webkit-animation-play-state:running;
-webkit-animation-timing-function:cubic-bezier(0.25,0.1,0.25,1);
-webkit-appearance:menulist-button;
-webkit-backface-visibility:visible;
-webkit-background-clip:border-box;
-webkit-background-composite:source-over;
-webkit-background-origin:padding-box;
-webkit-background-size:auto;
-webkit-border-fit:border;
-webkit-border-horizo​​ntal-spacing:0px;
-webkit-border-image:none;
-webkit-border-vertical-spacing:0px;
-webkit-box-align:center;
-webkit-box-direction:normal;
-webkit-box-flex:0;
-webkit-box-flex-group:1;
-webkit-box-lines:single;
-webkit-box-ordinal-group:1;
-webkit-box-orient:horizo​​ntal;
-webkit-box-pack:start;
-webkit-box-reflect:none;
-webkit-box-shadow:none;
-webkit-color-correction:default;
-webkit-column-axis:auto;
-webkit-column-break-after:auto;
-webkit-column-break-before:auto;
-webkit-column-break-inside:auto;
-webkit-column-count:auto;
-webkit-column-gap:normal;
-webkit-column-rule-color:rgb(0,0,0);
-webkit-column-rule-style:none;
-webkit-column-rule-width:0px;
-webkit-column-span:1;
-webkit-column-width:auto;
-webkit-flex-align:stretch;
-webkit-flex-direction:row;
-webkit-flex-flow:行nowrap;
-webkit-flex-item-align:auto;
-webkit-flex-order:0;
-webkit-flex-pack:start;
-webkit-flex-wrap:nowrap;
-webkit-flow-from:none;
-webkit-flow-into:auto;
-webkit-font-kerning:auto;
-webkit-font-smoothing:auto;
-webkit-font-variant-ligatures:normal;
-webkit-highlight:none;
-webkit-hyphenate-character:auto;
-webkit-hyphenate-limit-after:auto;
-webkit-hyphenate-limit-before:auto;
-webkit-hyphenate-limit-lines:无限制;
-webkit-hyphens:manual;
-webkit-line-box-contain:块内联替换;
-webkit-line-break:normal;
-webkit-line-clamp:none;
-webkit-line-grid:none;
-webkit-line-grid-snap:none;
-webkit-locale:auto;
-webkit-margin-after-collapse:collapse;
-webkit-margin-before-collapse:collapse;
-webkit-marquee-direction:auto;
-webkit-marquee-increment:6px;
-webkit-marquee-repetition:infinite;
-webkit-marquee-style:scroll;
-webkit-mask-attachment:scroll;
-webkit-mask-box-image:none;
-webkit-mask-box-image-outset:0px;
-webkit-mask-box-image-repeat:stretch;
-webkit-mask-box-image-slice:0 fill;
-webkit-mask-box-image-source:none;
-webkit-mask-box-image-width:auto;
-webkit-mask-clip:border-box;
-webkit-mask-composite:source-over;
-webkit-mask-image:none;
-webkit-mask-origin:border-box;
-webkit-mask-position:0%0%;
-webkit-mask-repeat:repeat;
-webkit-mask-size:auto;
-webkit-nbsp-mode:normal;
-webkit-perspective:none;
-webkit-perspective-origin:37px 10px;
-webkit-print-color-adjust:economy;
-webkit-region-break-after:auto;
-webkit-region-break-before:auto;
-webkit-region-break-inside:auto;
-webkit-region-overflow:auto;
-webkit-rtl-ordering:逻辑;
-webkit-svg-shadow:none;
-webkit-tap-highlight-color:rgba(0,0,0,0.199219);
-webkit-text-combine:none;
-webkit-text-decorations-in-effect:none;
-webkit-text-emphasis-color:black;
-webkit-text-emphasis-position:over;
-webkit-text-emphasis-style:none;
-webkit-text-fill-color:rgb(0,0,0);
-webkit-text-orientation:vertical-right;
-webkit-text-security:none;
-webkit-text-stroke-color:rgb(0,0,0);
-webkit-text-stroke-width:0px;
-webkit-transform:none;
-webkit-transform-origin:37px 10px;
-webkit-transform-style:flat;
-webkit-transition-delay:0s;
-webkit-transition-duration:0s;
-webkit-transition-property:all;
-webkit-transition-timing-function:cubic-bezier(0.25,0.1,0.25,1);
-webkit-user-drag:auto;
-webkit-user-modify:只读;
-webkit-user-select:text;
-webkit-wrap-flow:auto;
-webkit-wrap-margin:0px;
-webkit-wrap-padding:0px;
-webkit-wrap-through:wrap;
-webkit-writing-mode:horizo​​ntal-tb;
alignment-baseline:auto;
background-attachment:scroll;
background-clip:border-box;
背景颜色:白色;
background-image:none;
background-origin:padding-box;
background-position:0%0%;
background-repeat:repeat;
background-size:auto;
baseline-shift:baseline;
border-bottom-color:#CCC;
border-bottom-left-radius:0px;
border-bottom-right-radius:0px;
border-bottom-style:solid;
border-bottom-width:1px;
border-collapse:分开;
border-image-outset:0px;
border-image-repeat:stretch;
border-image-slice:100%;
border-image-source:none;
border-image-width:1;
border-left-color:#CCC;
border-left-style:solid;
border-left-width:1px;
border-right-color:#CCC;
border-right-style:solid;
border-right-width:1px;
border-top-color:#CCC;
border-top-left-radius:0px;
border-right-right-radius:0px;
border-top-style:solid;
border-top-width:1px;
bottom:auto;
box-shadow:none;
box-sizing:border-box;
caption-side:top;
明确:无;
clip:auto;
clip-path:none;
clip-rule:非零;
颜色:黑色;
color-interpolation:srgb;
color-interpolation-filters:linearrgb;
颜色渲染:auto;
cursor:default;
方向:ltr;
display:inline-block;
显性 - 基线:汽车;
empty-cells:show;
fill:#000000;
fill-opacity:1;
fill-rule:非零;
filter:none;
float:none;
flood-color:rgb(0,0,0);
flood-opacity:1;
font-family:Arial;
font-size:13px;
font-style:normal;
font-variant:normal;
font-weight:normal;
glyph-orientation-horizo​​ntal:0deg;
glyph-orientation-vertical:auto;
height:20px;
图像渲染:auto;
kerning:0;
left:auto;
letter-spacing:normal;
lighting-color:rgb(255,255,255);
line-height:normal;
list-style-image:none;
list-style-position:outside;
list-style-type:disc;
margin-bottom:2px;
margin-left:2px;
margin-right:2px;
margin-top:2px;
marker-end:none;
marker-mid:none;
marker-start:none;
掩码:无;
最大高度:无;
最大宽度:无;
min-height:0px;
min-width:0px;
opacity:1;
孤儿:2;
outline-color:black;
outline-style:none;
outline-width:0px;
overflow-x:可见;
overflow-y:visible;
padding-bottom:0px;
padding-left:0px;
padding-right:0px;
padding-top:0px;
page-break-after:auto;
page-break-before:auto;
page-break-inside:auto;
pointer-events:auto;
position:static;
resize:none;
right:auto;
形状渲染:auto;
说:正常;
stop-color:rgb(0,0,0);
stop-opacity:1;
stroke:无;
stroke-dasharray:none;
stroke-dashoffset:0;
stroke-linecap:butt;
stroke-linejoin:斜接;
stroke-miterlimit:4;
stroke-opacity:1;
stroke-width:1;
table-layout:auto;
text-align:-webkit-auto;
text-anchor:start;
text-decoration:none;
text-indent:0px;
text-overflow:clip;
text-rendering:auto;
text-shadow:none;
text-transform:none;
top:auto;
unicode-bidi:正常;
vector-effect:none;
vertical-align:baseline;
可见性:可见;
white-space:pre;
widows:2;
width:75px;
word-break:正常;
word-spacing:0px;
word-wrap:正常;
写作模式:lr-tb;
z-index:auto;
zoom:1;



任何线索?


解决方案有趣的...我也在Windows 7 / Chrome 18上,边框的CSS样式按预期工作,直到我从Aero切换到Windows Classic主题, / strong>此时您描述的行为发生。上面已经说过这是一个Windows操作系统问题,但我只是认为这可能会提供一些额外的清晰度。



更新:使用 - webkit-appearance:none; CSS规则,可以避免元素的默认操作系统样式选择元素。但是,它需要一些额外的CSS来维护元素的主要UI功能(即右侧的箭头按钮)。这里有一个可用的示例: http://jsfiddle.net/qZF4B/


This looks very simple but I can't solve it.

I have a simple drop down menu like this one...

<select>
    <option value="1">Option 1</option>
</select>

...and I want to apply a flat border (no 3D effect), so I'm using:

select {
    border:1px solid #CCC;                
}

See live sample here: http://jsfiddle.net/GqGr3/

It works fine in Firefox and IE:

Firefox http://www.re-moto.com/usuario/select-1.png

but it renders 3D in Chrome:

Chrome http://www.re-moto.com/usuario/select-2.png

That's how it works in my computer. I tested it on a second computer and it renders OK. If this is happening to me it my also happen to other users.

I don't have any extensions installed in Chrome and the browser is up to date (18.0.1025.151 m), on Windows 7.

These are the computed styles of the sample (including inherited), I don't see anything strange:

-webkit-animation-delay: 0s;
-webkit-animation-direction: normal;
-webkit-animation-duration: 0s;
-webkit-animation-fill-mode: none;
-webkit-animation-iteration-count: 1;
-webkit-animation-name: none;
-webkit-animation-play-state: running;
-webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
-webkit-appearance: menulist-button;
-webkit-backface-visibility: visible;
-webkit-background-clip: border-box;
-webkit-background-composite: source-over;
-webkit-background-origin: padding-box;
-webkit-background-size: auto;
-webkit-border-fit: border;
-webkit-border-horizontal-spacing: 0px;
-webkit-border-image: none;
-webkit-border-vertical-spacing: 0px;
-webkit-box-align: center;
-webkit-box-direction: normal;
-webkit-box-flex: 0;
-webkit-box-flex-group: 1;
-webkit-box-lines: single;
-webkit-box-ordinal-group: 1;
-webkit-box-orient: horizontal;
-webkit-box-pack: start;
-webkit-box-reflect: none;
-webkit-box-shadow: none;
-webkit-color-correction: default;
-webkit-column-axis: auto;
-webkit-column-break-after: auto;
-webkit-column-break-before: auto;
-webkit-column-break-inside: auto;
-webkit-column-count: auto;
-webkit-column-gap: normal;
-webkit-column-rule-color: rgb(0, 0, 0);
-webkit-column-rule-style: none;
-webkit-column-rule-width: 0px;
-webkit-column-span: 1;
-webkit-column-width: auto;
-webkit-flex-align: stretch;
-webkit-flex-direction: row;
-webkit-flex-flow: row nowrap;
-webkit-flex-item-align: auto;
-webkit-flex-order: 0;
-webkit-flex-pack: start;
-webkit-flex-wrap: nowrap;
-webkit-flow-from: none;
-webkit-flow-into: auto;
-webkit-font-kerning: auto;
-webkit-font-smoothing: auto;
-webkit-font-variant-ligatures: normal;
-webkit-highlight: none;
-webkit-hyphenate-character: auto;
-webkit-hyphenate-limit-after: auto;
-webkit-hyphenate-limit-before: auto;
-webkit-hyphenate-limit-lines: no-limit;
-webkit-hyphens: manual;
-webkit-line-box-contain: block inline replaced;
-webkit-line-break: normal;
-webkit-line-clamp: none;
-webkit-line-grid: none;
-webkit-line-grid-snap: none;
-webkit-locale: auto;
-webkit-margin-after-collapse: collapse;
-webkit-margin-before-collapse: collapse;
-webkit-marquee-direction: auto;
-webkit-marquee-increment: 6px;
-webkit-marquee-repetition: infinite;
-webkit-marquee-style: scroll;
-webkit-mask-attachment: scroll;
-webkit-mask-box-image: none;
-webkit-mask-box-image-outset: 0px;
-webkit-mask-box-image-repeat: stretch;
-webkit-mask-box-image-slice: 0 fill;
-webkit-mask-box-image-source: none;
-webkit-mask-box-image-width: auto;
-webkit-mask-clip: border-box;
-webkit-mask-composite: source-over;
-webkit-mask-image: none;
-webkit-mask-origin: border-box;
-webkit-mask-position: 0% 0%;
-webkit-mask-repeat: repeat;
-webkit-mask-size: auto;
-webkit-nbsp-mode: normal;
-webkit-perspective: none;
-webkit-perspective-origin: 37px 10px;
-webkit-print-color-adjust: economy;
-webkit-region-break-after: auto;
-webkit-region-break-before: auto;
-webkit-region-break-inside: auto;
-webkit-region-overflow: auto;
-webkit-rtl-ordering: logical;
-webkit-svg-shadow: none;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0.199219);
-webkit-text-combine: none;
-webkit-text-decorations-in-effect: none;
-webkit-text-emphasis-color: black;
-webkit-text-emphasis-position: over;
-webkit-text-emphasis-style: none;
-webkit-text-fill-color: rgb(0, 0, 0);
-webkit-text-orientation: vertical-right;
-webkit-text-security: none;
-webkit-text-stroke-color: rgb(0, 0, 0);
-webkit-text-stroke-width: 0px;
-webkit-transform: none;
-webkit-transform-origin: 37px 10px;
-webkit-transform-style: flat;
-webkit-transition-delay: 0s;
-webkit-transition-duration: 0s;
-webkit-transition-property: all;
-webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
-webkit-user-drag: auto;
-webkit-user-modify: read-only;
-webkit-user-select: text;
-webkit-wrap-flow: auto;
-webkit-wrap-margin: 0px;
-webkit-wrap-padding: 0px;
-webkit-wrap-through: wrap;
-webkit-writing-mode: horizontal-tb;
alignment-baseline: auto;
background-attachment: scroll;
background-clip: border-box;
background-color: white;
background-image: none;
background-origin: padding-box;
background-position: 0% 0%;
background-repeat: repeat;
background-size: auto;
baseline-shift: baseline;
border-bottom-color: #CCC;
border-bottom-left-radius: 0px;
border-bottom-right-radius: 0px;
border-bottom-style: solid;
border-bottom-width: 1px;
border-collapse: separate;
border-image-outset: 0px;
border-image-repeat: stretch;
border-image-slice: 100%;
border-image-source: none;
border-image-width: 1;
border-left-color: #CCC;
border-left-style: solid;
border-left-width: 1px;
border-right-color: #CCC;
border-right-style: solid;
border-right-width: 1px;
border-top-color: #CCC;
border-top-left-radius: 0px;
border-top-right-radius: 0px;
border-top-style: solid;
border-top-width: 1px;
bottom: auto;
box-shadow: none;
box-sizing: border-box;
caption-side: top;
clear: none;
clip: auto;
clip-path: none;
clip-rule: nonzero;
color: black;
color-interpolation: srgb;
color-interpolation-filters: linearrgb;
color-rendering: auto;
cursor: default;
direction: ltr;
display: inline-block;
dominant-baseline: auto;
empty-cells: show;
fill: #000000;
fill-opacity: 1;
fill-rule: nonzero;
filter: none;
float: none;
flood-color: rgb(0, 0, 0);
flood-opacity: 1;
font-family: Arial;
font-size: 13px;
font-style: normal;
font-variant: normal;
font-weight: normal;
glyph-orientation-horizontal: 0deg;
glyph-orientation-vertical: auto;
height: 20px;
image-rendering: auto;
kerning: 0;
left: auto;
letter-spacing: normal;
lighting-color: rgb(255, 255, 255);
line-height: normal;
list-style-image: none;
list-style-position: outside;
list-style-type: disc;
margin-bottom: 2px;
margin-left: 2px;
margin-right: 2px;
margin-top: 2px;
marker-end: none;
marker-mid: none;
marker-start: none;
mask: none;
max-height: none;
max-width: none;
min-height: 0px;
min-width: 0px;
opacity: 1;
orphans: 2;
outline-color: black;
outline-style: none;
outline-width: 0px;
overflow-x: visible;
overflow-y: visible;
padding-bottom: 0px;
padding-left: 0px;
padding-right: 0px;
padding-top: 0px;
page-break-after: auto;
page-break-before: auto;
page-break-inside: auto;
pointer-events: auto;
position: static;
resize: none;
right: auto;
shape-rendering: auto;
speak: normal;
stop-color: rgb(0, 0, 0);
stop-opacity: 1;
stroke: none;
stroke-dasharray: none;
stroke-dashoffset: 0;
stroke-linecap: butt;
stroke-linejoin: miter;
stroke-miterlimit: 4;
stroke-opacity: 1;
stroke-width: 1;
table-layout: auto;
text-align: -webkit-auto;
text-anchor: start;
text-decoration: none;
text-indent: 0px;
text-overflow: clip;
text-rendering: auto;
text-shadow: none;
text-transform: none;
top: auto;
unicode-bidi: normal;
vector-effect: none;
vertical-align: baseline;
visibility: visible;
white-space: pre;
widows: 2;
width: 75px;
word-break: normal;
word-spacing: 0px;
word-wrap: normal;
writing-mode: lr-tb;
z-index: auto;
zoom: 1;

Any clue?

解决方案

Intriguing... I'm also on Windows 7/Chrome 18 and the CSS styling for the border is working as expected, until I switch from Aero to a 'Windows Classic' theme, at which point the behavior you've described occurs. It's already been stated above that this is an Windows OS issue, but I just thought this might offer some additional clarity.

UPDATE: Using the -webkit-appearance: none; CSS rule, it appears that the default OS styling of the select element can be avoided. However, it requires a bit of extra CSS to maintain the staple UI features of the element (namely the arrow button at the right). A working example is available here: http://jsfiddle.net/qZF4B/.

这篇关于Chrome中的SELECT边框呈现3D的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆