2012-04-26 13 views
6

En mi cssNecesito insertar algún código PHP en la hoja de estilo

div.image { 
    width:<?php echo get_image_size($size[1]); ?>px; 
} 

El tamaño se almacena en una matriz de modo que llamé $ tamaño [1] de aquí ...

soy principiante en php ...

any one pls ayuda?

+2

¿cuál es su razonamiento para hacer esto? ¿Estás definiendo dimensiones de imagen desde la base de datos? No mezclaría CSS con PHP, si es así, necesita volver a pensar lo que está haciendo. – Jakub

+0

La mejor solución es establecer el con directo en la imagen;) Stony

Respuesta

1

Para ello es necesario utilizar como este cambio

  1. su archivo css como css.php, y el uso de hojas de estilo son como esto

    <link rel="stylesheet" type="text/css" href="css.php?opt1=<?php echo get_image_size($size[1]); ?>" />

  2. En archivo css.php

    div.image { width:<?php echo $_GET['opt1']; ?>px; }

probar esto

8

mejor solución es establecer una cabecera para el archivo/php css en mi ejemplo cssfile.php:

<?php header("Content-type: text/css"); ?> 

continuación, puede utilizar el archivo php como el estilo.

<link rel="stylesheet" type="text/css" href="cssfile.php?param=1" /> 

Luego debería obtener el resultado en su sitio. Pero con esa solución debes tener mucho cuidado si tienes mucho tráfico. En cada visita al sitio, su intérprete de PHP se usa para entregar ese archivo.

1

Una forma es mover esa pieza particular fuera del archivo .css e insertarla en un documento PHP que tenga acceso a la función get_image_size(). Por ejemplo, puede tener una plantilla que se analiza como el encabezado. Podría rodear esta pieza con las etiquetas <style>.

3

cambiar la extensión de .php y luego en su puesto de estilos:

<?php header("Content-type: text/css"); ?> 

continuación, puede utilizar PHP dentro de su hoja de estilo.

4

Sí, para esta instancia en particular si solo necesita php en esta línea, lo mejor es insertarlo en el encabezado de su html en lugar de tener que php haga un archivo CSS completo para usted.

<style type="text/css"> 
    div.image { 
    width:<?php echo get_image_size($size[1]); ?>px; 
    }  
</style> 

PHP NO debe crear sus activos estáticos a menos que sea absolutamente necesario. Notará un golpe de rendimiento si el tráfico aumenta.

3

tal vez debería utilizar este:

<div class="image"> 
    <img src="image.gif" /> 
</div> 

CSS:

div.image img{ 
    width: 100% 
} 

El problema con poner el interior del estilo html es que todo llegar en mal estado. Debería intentar separar html de css y js tanto como sea posible.

Además, desde mi vencimiento, esta no es una buena práctica para usar php en archivos css o js.

Considere la posibilidad de revisar su diseño html para optimizar esto.

Cuestiones relacionadas