2008 08 de enero 2008

Comentarios condicionales: Para su EI-Sólo la parte Duex

Unos meses antes vimos, la forma en que podría incluir un trozo de CSS que sería visible a IE6 sólo ( Para su IE sólo ). Hay otras formas de lograr esto. Sólo tiene que incluir una separada de CSS, específica para su IE de destino. esto se podría lograr con lo que se llama como los comentarios condicionales.

Comentarios condicionales es una manera de detectar el tipo de navegador y versión. La detección del navegador se realiza para asegurar que el contenido que se presenta a la específica del navegador. La detección del navegador se puede hacer uso de muchas técnicas diferentes. Este método tiene varias ventajas sobre los métodos anteriores, que incluyeron el cambio de estilo usando javascript. Para obtener una lista importante de unos pocos, sería;

  • Secuencias de comandos no es necesario
  • Cross-browser

¿Cómo hacemos esto?

¿Es algo en IE 5 sólo
<!--[if IE 5]> Welcome to Internet Explorer 5. <![endif]-->

¿Es algo en todas las versiones de IE
<!--[if IE]>
<link href="css/ie.css" rel="Stylesheet" type="text/css" />
<![endif]-->

¿Es algo en todas las versiones de IE más recientes que IE 5
<!--[if gte IE 5]>
<script type="text/javascript"><!--
alert("Congratulations! You are running Internet Explorer 5 or greater.");<br />
// --></script>
<![endif]-->

Para más vartiations condicionales, lea esta información en MSDN:
Acerca de comentario condicional


2007 09 de septiembre 2007

IE 6 Problemas location.href

¿Ha notado a veces, las cosas simples sólo se niega a trabajar en IE6 ... location.href es sólo una cosa.

Si ha agregado una función onclick a su etiqueta de ancla, como a continuación ...

<a href="javascript:void(0);" onclick="onClickLink('xxx');"> ir a la nueva ubicación </ a>

Con una función como esta ...
función de onclickLink (id) {
var URI = "test2.html id =?" + id;
window.location.href = URI;
}

A su ironía, se daría cuenta de que ese trozo de script sencillo se niega a trabajar en el IE ... Bueno! Puedo hablar de las razones aquí, pero no creo que valga la pena ... Aunque, me parece que tiene una solución ... (Apuesto a que si usted entiende Javascript, usted comprenderá, por lo que agregar este truco para IE6)

La solución

<a href="javascript:void(0);" onclick="onClickLink('xxx'); retorno false; "> ir a la nueva ubicación </ a>

Si ustedes, las respuestas simples, por favor, escribir un comentario. Realmente se appretiated, apuesto a que, por muchos!


2007 08 de septiembre 2007

Para su IE sólo

Si usted ha estado escribiendo CSS por un tiempo, usted tendría que experimentar esos momentos en los que, literalmente, tirar de su cabello cuando sus diseños CSS se veía bien en todos los nuevos navegadores (me refiero a los navegadores más tardar el IE6), pero el IE 6 tiene una rabieta. Usted luchar duro para ajustar el CSS, pero no funciona ... Bueno! Pruebe estos trucos ...

1. Destacar Hack: -
Por definición, la especificación de CSS 2.1 permite subrayado ("_") en los identificadores de CSS. Sin embargo, muchos navegadores aún parecen ignorar cualquier identifica procedió con un guión bajo, pero el IE. Este fallo de IE / función se convierte así en una forma muy clara para establecer las propiedades CSS de IE solamente. a fin de recordar, una propiedad CSS por escrito con el guión en el comienzo es visible para Internet Explorer (todas las versiones de IE, pero 7)

#box {
min-height: 300px;
height: auto;
_height: 300px; /* all IE versions less than version 7 */
...
}

Ver demostración de este guión truco

Además, el hack min-height para IE6 utiliza el truco de subrayado, echa un vistazo a


2. Almohadilla (#) Hack: -
Al igual que el guión truco, éste es también es para IE Oly, con una buena diferencia, los identificadores de propiedad que empiezan con un # en el comienzo es visible para todas las versiones de IE, IE7 incluido y es invisible para cualquier navegador estándar de otro.

.obj_container {
display: table-cell;
vertical-align: middle;
#position: absolute; /* For IE only */
#top: 50%; /* For IE only */
#left:50%; /* For IE only */
}

Este truco se ha usado muy bien para demostrar un navegador transversal vertical alinear solución, echar un vistazo a este artículo para averiguar más


3. CSS para IE6 sólo: -
#my_bad_behaving_div {
/*something for all browsers*/
}
/* Lets use the * html hack so only IE6 reads the rule */
* html #my_bad_behaving_div{
/*something for IE6 only*/
}

Estos hacks parece enviado del cielo, cuando nada más funciona ... Si alguno de estos trucos te salva la vida algún día, no se olvide de que me traten a un café :)


NDK en casa | Expresando IT | Boca Expresando | Penmenship Expresando | Awe Expresando | expresarme