base_url() no funciona en el archivo CSS…

aquí está mi php :

<link  type="text/css" href="<?=base_url()?>css/style.css"/>
<body>
</body>

aquí está mi css/estilo.css :

body {
  background:#356aa0 url(<?=base_url()?>img/background.png) repeat-x;
  color:#fff;
}

el texto de un cambio de color a blanco, pero la imagen no se muestra…
si yo uso la url(../img/fondo.png), se muestran…
pero cuando abro la url localhost/proyecto/index.php/control/función/var1/var2, no…

Es Solucionado, Gracias a cada uno… :]

hago archivo php en la vista de carpeta como esta :

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

body {
    background:url(<?=base_url()?>img/background.png);
}

y me carga el archivo php acabo de hacer con la función en el controlador y, a continuación, vincular :

<link type="text/css"  href="<?=base_url()?>control/style.php"/>

Es trabajo, Gracias chicos…

  • Son sus shorttags habilitado? Puedes publicar de cómo su etiqueta de enlace se ve como cuando se imprima en la vista de código fuente en el navegador? Y usted sabe, no se puede publicar etiquetas PHP en los archivos css.
  • se puede utilizar php en una .archivo css ?
  • No. Sólo si el archivo php generado pero no lo es.

7 Comentarios

  1. 2

    Archivo CSS no consigue analizar como archivo PHP. Si realmente quieres hacer algo como eso, cambie el nombre del archivo como styles.php

    ABRIR la página y agregar

    header("content-type: text/css");

    Esto le dice a la página para ser tratado como un texto basado en el archivo CSS. Entonces usted puede simple echo el resto de tu CSS como

    echo "
    body {
    ....
    ....
    ";

    Para solucionar el base_url() no sea accesible desde styles.php establecer una variable de sesión para mantener eso. Usted puede mantener en su index.php de codeignitor.

    $_SESSION['base_url'] = base_url();

    Ahora, el uso de esta en el interior de styles.php.

    background: url("<?php echo $_SESSION['base_url']; ?>"/../../some.jpg");
    • yo uso incluyen la función de php o <link type=»text/css» href=»<?=base_url()?>css/style.php»/>??
    • Sí, como que
    • Pero asegúrese de que, base_url() es accesible desde dentro de la styles.php
    • ¿Por qué sería? Que styles.php (incluso si cambió de nombre a php) no es parte de codeigniter PHP de código? Pls explicar. :/
    • trato <link type=»text/css» href=»<?=base_url()?>css/style.php»/>, pero el base_url() no funciona…pero yo intente hacer el archivo php a ver y llamar con funstion, y es un trabajo…Gracias man…
    • Intente comprobar si su shorttags están habilitados?
    • Sí, voy a crear una obra en torno a trabajar con eso .
    • Verificación de la solución.

  2. 4

    Usted debe hacer esto de esta

    Estructura de sus archivos

    myapp/
        application/
        system/ 
        css/
        img/

    Y en css escribir este

    body {
      background:#356aa0 url(../img/background.png) repeat-x;
      color:#fff;
    } 

    Y ahora se llaman

    <link  type="text/css" href="<?=base_url()?>css/style.css"/>

    Que es la forma estándar de hacerlo. También tu css no es dinámica, por lo que no tiene que preocuparse de código php usando en él. La estructura que he presentado en la respuesta seguramente va a usar los estilos correctamente y la carga de las imágenes.

  3. 2

    Obtener su base_url() del archivo CSS. Eso se soluciona el problema. No se puede poner código PHP en un archivo CSS.

  4. 2

    Usted no necesita hacer archivo php como css. Simplemente coloque las imágenes de archivo de «aplicación» de la carpeta, e.g en los activos/img. A continuación, editar el archivo css

    .error {
      color: #D8000C;
      background-color: #FFBABA;
      background-image: url('../img/error.png');
      background-size: 20px 20px;
    }

    llamar al archivo css utilizando

      <link  href="<?php echo base_url(); ?>assets/css/style.css" media="all">

    Absolutamente obras tio!.

  5. 0

    si la estructura de carpetas es:

    YourAppFolder/
        application/
               public/
                   css/
                   img/
             system/

    A continuación, utilizar este en su punto de vista:

    <link  type="text/css" href="<?=base_url()?>public/css/style.css"/>

    y en css usar esta imagen:

    background:#356aa0 url(../img/background.png) repeat-x;
  6. 0

    Probar esta..

    Reemplazar este:

    <link  type="text/css" href="<?=base_url()?>css/style.css"/>
    <body>
    </body>

    Con esto:

    <link  type="text/css" href="<?php base_url(CSS/style.css)?>"/>
    <body>
    </body>

    También reemplazar los siguientes en css/estilo.css :

    body {
      background:#356aa0 url(<?=base_url()?>img/background.png) repeat-x;
      color:#fff;
    }

    Con esto:

    body {
      background:#356aa0 url(../img/background.png) repeat-x;
      color:#fff;
    }

    PD: si no funciona, pruebe a utilizar un punto(.) -> ./img/fondo.png

    Asumiendo que la estructura del archivo es este:

    -ci
    --application
    --CSS
    ---file.css
    --img
    ---background.png
    --system
    .
    .
    .

    y su base_url() : " http://localhost/sitename/"

  7. 0

    o puede escribir …

     <link  type="text/css" href="<? echo base_url('your css file from base url') ?>/>

    esta es tu archivo css externo

        body {
      background:url(<? echo base_url('your image path from base url')?>) repeat-x;
      color:#fff;
    }

Dejar respuesta

Please enter your comment!
Please enter your name here