El cliente desea dos bordes de color para un aspecto con relieve. ¿Puedo hacer esto en un elemento? Esperaba evitar apilar dos elementos DOM con bordes individuales.Bordes de dos colores
Respuesta
Si por "gofrado" quiere decir dos bordes alrededor de la otra con dos colores diferentes, no es el outline
propiedad (outline-left
, outline-right
....) pero con escaso apoyo en la familia IE (es decir, Internet Explorer 6 y 7 no lo soporto para nada). Si necesita dos bordes, un segundo elemento de envoltura sería lo mejor.
Si quiere decir usar dos colores en el mismo borde. Use p. Ej.
border-right: 1px white solid;
border-left: 1px black solid;
border-top: 1px black solid;
border-bottom: 1px white solid;
no son especiales border-styles
para esto también (ridge
, outset
y inset
) pero tienden a variar a través de los navegadores en mi experiencia.
Creo que lo que está preguntando es algo así como 'border: black white; 'que significa definir dos colores diferentes para un borde que se ve secuencialmente al mismo tiempo. – Tarik
@Braveyard ah, ya veo. Eso sería teóricamente posible usando 'outline' pero no funcionaría bien en IE <8 –
Tenga en cuenta que solo hay un esquema ... no existe tal como outline-left, outline-right, outline-top, o outline Desafortunadamente, desafortunadamente. –
No es posible, pero usted debe comprobar para ver si border-style
valores como inset
, outset
o algún otro, logrado el efecto deseado .. (lo dudo, aunque ..)
CSS3 tiene las propiedades border-image , pero todavía no sé sobre el soporte de los navegadores (más información en http://www.css3.info/preview/border-image/) ..
Nada es imposible en el mundo de la programación: P bueno, me gusta hacer esta afirmación todo el tiempo :) – Tarik
@Braveyard, * risita * buen punto :) –
Sí: Utilice la propiedad outline
; actúa como un segundo borde fuera de tu frontera. Tenga cuidado, sin embargo, puede interactuar de manera poco convencional con márgenes, rellenos y sombras. En algunos navegadores, es posible que también deba usar un prefijo específico del navegador; para asegurarse de que lo detecta: -webkit-outline
y similares (aunque WebKit en particular no requiere esto).
Esto también puede ser útil en caso de que desee deshacerse del contorno de ciertos navegadores (como es el caso si desea combinar el contorno con una sombra paralela, en WebKit el contorno está dentro de la sombra; en Firefox está afuera, por lo que -moz-outline: 0
es útil para asegurarse de no tener una línea complicada alrededor de su hermosa sombra paralela CSS).
.someclass {
border: 1px solid blue;
outline: 1px solid darkblue;
}
Editar: Algunas personas han comentado que no lo hace outline
jive bien con IE < 8. Si bien esto es cierto; que admite IE < 8 realmente no es algo que deba hacer.
Lamentablemente, 'outline' no funciona en absoluto en IE6/7. –
-1 para "soportar IE <8 realmente no es algo que debas estar haciendo".No soportar IE6 puede estar bien. Pero no apoyar a IE7 es ridículo, ningún sitio con una audiencia no técnica puede permitirse que este –
'outline' haya existido desde CSS2. – BoltClock
escribe simplemente
style="border:medium double;"
de la etiqueta html
Eso le da dos bordes con un solo color entre ellos. –
Otra forma es utilizar box-shadow
:
#mybox {
box-shadow:
0 0 0 1px #CCC,
0 0 0 2px #888,
0 0 0 3px #444,
0 0 0 4px #000;
-moz-box-shadow:
0 0 0 1px #CCC,
0 0 0 2px #888,
0 0 0 3px #444,
0 0 0 4px #000;
-webkit-shadow:
0 0 0 1px #CCC,
0 0 0 2px #888,
0 0 0 3px #444,
0 0 0 4px #000;
}
<div id="mybox">ABC</div>
Ver example aquí.
+1, esto es genial, pero no funcionará en ningún IE ... –
Afortunadamente ahora funciona en IE9: http://jsbin.com/eyasuk/1. –
Prefiero esto ya que funciona con border-radius a diferencia del método de esquema – Johan
¿Has probado los diferentes estilos de borde disponibles dentro de las especificaciones de CSS?Ya hay dos estilos de borde que pudiera acomodar su necesidad:
border-style: ridge;
O
border-style: groove;
Esto era exactamente lo que necesitaba. (Reparado
Esto es muy posible. ¡Solo se necesita un pequeño truco de CSS!
<div class="border">
Hi I have two border colors<br />
I am also Fluid
</div>
div.border {
border: 1px solid #000;
position: relative;
}
div.border:before {
position: absolute; display: block; content: '';
border: 1px solid red;
height: 100%; width: 100%;
box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
}
es eso lo que busca?
De hecho, es complicado, pero se degrada con elegancia e incluso funciona en el explorador de existencias de mi HTC (Android). Si usa 'border-radius', intente reducir el radio del borde interno en un píxel, lo que hará que el espacio entre los dos bordes redondeados sea casi imperceptible. – flu
¡Estoy usando esto, y funciona EXCELENTE! – Fruxelot
Esto es bueno. Usar 'bottom: 1px' en vez de' height: 100% 'funcionó mejor para mí solo por un borde inferior :) – Nick
Usted podría utilizar
<html>
<head>
<title>Two Colors</title>
<style type="text/css">
.two-colors {
background: none repeat scroll 0% 0% rgb(245, 245, 245); border-color: rgba(111,111,111,0.2) transparent;
padding: 4px; outline: 1px solid green;
}
</style>
<style type="text/css">
body {
padding-top: 20px;
padding-bottom: 40px;
background-color:yellow;
}
</style>
</head>
<body>
<a target="_blank" href="people.htm">
<img class="two-colors" src="people.jpg" alt="Klematis" width="213" height="120" />
</a>
</body>
</html>
Esto produce un efecto agradable.
<div style="border: 1px solid gray; padding: 1px">
<div style="border: 1px solid gray">
internal stuff
</div>
</div>
En lugar de utilizar contorno no soportado y problemático sólo tiene que utilizar
- background-color + acolchado para el borde interior
- frontera normal para la exterior.
Ejemplo:
HTML:
<img src="http://cdn3.thumbs.common.smcloud.net/common/8/6/s/863444wpPN.jpg/r-0,500-n-863444wpPN.jpg" alt="malkovich" />
CSS:
img {
padding: 1px;
background: yellow;
border:1px solid black;
}
TEST (jsFiddle):http://jsfiddle.net/68gb7/
de Williham Totland. Funciona bien, pero solo si tienes contenido con fondo. – Culme
El contorno es bueno, pero solo cuando se desea rodear el borde.
digamos que si usted quiere que sea sólo en parte inferior o superior puede utilizar
<style>
#border-top {
border-top: 1px solid #ccc;
box-shadow: inset 0 1px 0 #fff;
}
</style>
<p id="border-top">This is my content</p>
Y para la parte inferior:
<style>
#border-bottom {
border-top: 1px solid #ccc;
box-shadow: 0 1px 0 #fff;
}
</style>
<p id="border-bottom">This is my content</p>
la esperanza de que esto ayude.
- 1. Creando un gráfico con bordes de diferentes colores en Mathematica
- 2. banda de fondo con dos colores?
- 3. Android: botón con dos colores de fondo
- 4. UILabel con texto de dos colores diferentes
- 5. iPhone CGContext: dibujo dos líneas con dos colores diferentes
- 6. ¿Cómo intercalar entre dos colores usando three.js?
- 7. ¿Cómo se multiplican dos colores en javascript?
- 8. Crear una forma de rectángulo con solo dos bordes redondeados
- 9. iOS - Uso de TTTAttributedLabel para establecer dos colores de texto
- 10. Dos escalas de colores para geom_line en ggplot2
- 11. Cómo mostrar texto con fondo de dos colores?
- 12. Dos colores en un campo de texto usando Actionscript 3
- 13. Dos colores en un nodo con el punto de graphviz?
- 14. matplotlib: mapa de colores continua llenar entre dos líneas
- 15. UILabel con el texto de dos colores diferentes
- 16. color android entre dos colores, en función del porcentaje?
- 17. Chrome/WebKit creando una barra sólida al usar bordes, bordes y bordes superiores e inferiores
- 18. Detección de bordes unidimensionales
- 19. GraphViz, agrupando los mismos bordes
- 20. Algoritmo de intersección de bordes?
- 21. Técnicas de detección de bordes
- 22. OpenGL glColorPointer repite colores?
- 23. Botones sin bordes de Android
- 24. Extracción de bordes punteados en
- 25. Detección de bordes y transparencia
- 26. UIImageize con bordes duros
- 27. Bordes ocultos en Graphviz
- 28. navegador Cruz bordes curvos
- 29. Transparente, sin bordes ProgressDialog
- 30. ¿Cómo solo mantener nodos en networkx-graph con 2+ bordes salientes o 0 bordes salientes?
¿Estás dispuesto a utilizar Javascript para lograr el efecto? http://jquery.malsup.com/corner/ – nopuck4you