PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Stylesheet in PHP-Datei mit Variablen (https://www.php-resource.de/forum/php-developer-forum/105392-stylesheet-in-php-datei-mit-variablen.html)

Andmann 06-12-2015 16:12

Stylesheet in PHP-Datei mit Variablen
 
Hallo Zusammen,

Kurz zu meinem Problem:
Ich versuche es hinzubekommen, das ich verschiedene styles in einer php Datei definiere und diese per Variable an die Objekte übergebe.
Da ich in den styles die Größe und die Position variable habe und diese für jedes Objekt errechne, wollte ich diesen ganzen stylepart auslagern da er sich immer wiederholt.

Vorher:

navigation.php
<?php
echo "<div style=\"overflow:hidden; width:".$width."; height:".$height."; position:fixed; top:".$top."; left:".$left."; z-index:1;\">";
?>


Nacher:

style.php
<?php
$div_1 = 'overflow:hidden; width:".$width."; height:".$height."; position:fixed; top:".$top."; left:".$left."; z-index:1;';
?>

navigation.php
<?php
include ("style.php"); // Am Anfang der Seite
echo "<div style=\"".$div_1."\">";
?>

Leider funktioniert es nicht :( Der style wird nicht angewandt.
Anscheinend erkennt der style die Variablennamen nicht!


Wenn ich die Variable "$div_1" per echo ausgebe steht aber das gleiche drin wie vorher im style.

Vielleicht kann mir hier einer helfen. Danke.

Kropff 06-12-2015 20:51

falsche Zeichenkettenverknüpfung. Wenn du mit dem Hochkomma (') arbeitests, musst du auch auch durchziehen.
PHP-Code:

$div_1 'overflow:hidden; width:'.$width.'; height:'.$height.'; position:fixed; top:'.$top.'; left:'.$left.'; z-index:1;'

Peter

PS: sei vorsichtig mit Inline-Styles.

Andmann 06-12-2015 21:27

Da hat du auch grundsätzlich recht, das Problem ist in dem Fall nur, das er mir dann schon in dem Bereich die Variablen einfügt. und die sind in dem Zeitpunkt noch "0".

Das heißt er setzt mir nachher in den style das hier ein:

echo "<div style=\"overflow:hidden; width:0; height:0; position:fixed; top:0; left:0; z-index:1;\">";

Ich möchte ja das die Variablenname drin stehen bleiben damit er mir diese mit den vor jedem Element errechneten Positionen und Größen füllt.


Ich hoffe ihr versteht was ich meine.


mermshaus 07-12-2015 00:47

Leg es dir als Funktion oder Closure an:

PHP-Code:

$generateStyles = function ($left$top$width$height) {
    return 
'overflow: hidden; width: ' $width 'px; height: ' $height 'px; '
            
'position: fixed; top: ' $top 'px; left: ' $left 'px; z-index:1;';
};

echo 
'<div style="' $generateStyles(100503040) . '">'



Alle Zeitangaben in WEZ +2. Es ist jetzt 05:51 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG