2012-09-13 21 views
18

Estoy creando un diálogo con un iframe adentro, el problema es que el borde sigue apareciendo en IE8, esto funciona perfectamente en cualquier otro navegador.Cómo deshacerse de borde para un Iframe en IE8

Esto es lo que he intentado, he intentado también fronterizo: ninguno

$(d.dialog).find('#MyCoolDialogInner').html('<iframe src="/apex/EscalationForm?id={!Case.Id}" height="495" width="380" marginheight="0" marginwidth="0" frameborder="0"/>'); 

Gracias de antemano

+0

hicieron u tratar usando 'css'? –

Respuesta

47

Añadir el atributo frameBorder (nota la mayúscula ‘B’).

Por lo tanto, sería el resultado:

<iframe frameBorder="0">Browser not compatible.</iframe> 
+1

(tenga en cuenta la letra 'B') ¡Gracias! Perfecto. – FlemGrem

+0

Solo me pregunto: ¿hay * alguna * versión de navegador donde importe el caso de la 'B'? (Lo dudo). – ACJ

+0

En mi caso, la propiedad frameBorder no tuvo ningún efecto cuando se agregó desde IE dom explorer (para fines de depuración). Tuve que cambiar el archivo html y actualizar la página dentro del navegador. –

4

Ha intentado establecer que a través de CSS?

iframe { 
    border:0px none transparent !important; 
} 

Además, estos parecen funcionar también - marginheight="0" marginwidth="0" frameborder="0". Tomado de this post on the same IE issue.

2

Prueba esto:

<iframe frameborder="no" /> 
0

frameborder puede ser un 1 o 0, no estoy seguro "no" es un valor válido. Coda proporciona opciones de valor válidas durante la codificación y solo 1 y 0 están disponibles para usar cuando hago esto en mi iframe.

1

Me doy cuenta de que IE8 es una molestia cuando se trata de iFRAMES. "Frameborder" está en desuso en HTML5, por lo que si bien es la opción más fácil para IE8, esta no es una solución a largo plazo.

He ocultado correctamente los bordes y las barras de desplazamiento al colocar el iFRAME dentro de un contenedor. El contenedor iFRAME se ubica dentro de un div para el posicionamiento general en la página web. El iFRAME en sí es una posición absoluta y los márgenes negativos se aplican tanto a la parte superior como a la izquierda para ocultar los bordes superior e izquierdo. El ancho y la altura del iFRAME absolutamente posicionado deben codificarse en más del 100%, por lo que excede el tamaño principal hasta el punto en que los bordes derecho e inferior no son visibles (también las barras de desplazamiento no están visibles). Esta técnica también hace que el iFrame responda porque el contenedor iFRAME usa porcentajes, así como el div que contiene el contenedor. Por supuesto, el div principal de iFRAME debe estar configurado como desbordamiento: oculto.

Aquí es un ejemplo de código:

/*THE PARENT DIV FOR THE iFRAME CONTAINER*/ 
    .calcontainer 
     { 
     width:100%; /*adjust iFrame shrinking here - if floating use percentage until no white space around image.*/ 
     max-width:200px;  
     margin:auto;  
     } 


    /*THE RELATIVE POSITIONED CONTAINER FOR THE iFRAME*/ 

    .calinside /*container for iFRAME - contents will size huge if the container is not contained and sized*/ 
     { 
     position:relative; /*causes this to be the parent for the absolute iFRAME*/ 
     padding-bottom: 100%; /* This is the aspect ratio width to height ratio*/ 
     height: 0; 
     overflow:hidden; /*hides the parts of the iFRAME that overflow due to negative margins and over 100% sizing*/  
     } 


/*THE ABSOLUTE POSITIONED iFRAME contents WITH NEGATIVE MARGINS AND OVER 100% SIZE IS CODED HERE. SEE THE NORMAL SETTINGS VERSUS THE IE8 SETTINGS AS MARKED. A SEPARATE CSS FILE IS NEEDED FOR IE8 WITH A CONDITIONAL STATEMENT IN THE HEAD OF YOUR HTML DOCUMENT/WEB PAGE*/ 

    .calinside iframe 
     { 
     position: absolute; 
     top: 0; 
     left: 0; 
     width: 100% !important;/*must expand to hide white space to the right and below. Hidden overflow by parent above*/ 
     height: 103% !important; /*must expand to hide white space to the right and below. Hidden overflow by parent above*/ 
     /*IE8*/top: -2%; 
     /*IE8*/left: -2%; 
     /*IE8*/width: 114% !important;/*For IE8 hides right border and scroll bar area that is white*/ 
     /*IE8*/height: 105% !important; /*hide white space and border below. Hidden overflow by parent above*/   
     } 
+0

¡Bienvenido a Stack Overflow! Lo mejor es obtener una vista previa de tu publicación para asegurarte de que se entregue el formato. –

Cuestiones relacionadas