ďťż

Stałe w CSS Jak zdefiniować stałe globalne w CSS?

       

Podstrony


telcocafe

Witam
Chce na stronie miec mozliwosc dostępu do stałych zdefiniowanych najlepiej w arkuszu css.
Strona ta ma kilka podstron.
Chodzi mi dokladnie o nadaniu stałej wartości tekstowej np. adres e-mail lub nr. tel. kom. i odwołaniu się do niej w pewnym miejscu na stronach gdzie występują te dane poniewaz często te dane się zmieniają i chciałbym miec możliwość zmieniania ich tylko w arkuszu bez aktualizacji każdej z podstron.
Jeśli istnieje takie coś(a wierze że istnieje :P ) to prosze o ewentualny fragment kodu.
Pozdro



Na pewno nie w CSS -.-

Użyj PHP, ew. jak serwer nie ma wsparcia, to JS. Ustalasz zmiennąvar mail='x@y.pl';i zapisujesz ją w pliku .js który dołączasz do dokumentu w sekcji META. Następnie w treści wpisujesz <script type="text/javascript">document.write(mail);</script> :)

Sposób na PHP:
w pliku .php wpisujesz<?php $mail='x@y.pl'; ?> a w treści umieszczasz<?php include('nazwa_pliku.php'); echo($mail); ?>;)
Użytkownik DJ_ProG edytował ten post 05 październik 2007, 14:16
No ok ale jak to teraz zintegroawac z html-em
mam:
<p style="margin:8px 0 0 8px;" class="text_1"><b>e-mail</b>: <a href="mailto:xxxxx@xxx.pl" style="font-weight:bold;" onfocus="blur()">xxxxx@xxx.pl</a></p><br>

Jak wstawic ta zmienna po "mailto:" ?

//edit
Ok juz udało mi sie rozwiazałem to nastepujaco:
Na samym początku "body" dalem
<?php
include('nazwa_pliku.php');
?>

i w miejscu maila:
<p style="margin:8px 0 0 8px;" class="text_1"><b>e-mail</b>: <a href="mailto:<?php echo($mail);?>" style="font-weight:bold;" onfocus="blur()"><?php echo($mail);?></a></p><br>

Dzieki DJ_Prog! :)
Użytkownik Dogz edytował ten post 05 październik 2007, 17:57
Skoro wybrałeś PHP, to możesz zapisać krócej (o ile twój serw to obsługuje)<?=$mail;?>:)
A co do JS to mogłeś jeszcze zdefiniować w pliku funkcjęfunction wmail(s) { return '<a href="mailto:'+s+'" style="font-weight:bold;" onfocus="blur()">'+s+'</a>'; }a później w kodzie dać<p style="margin:8px 0 0 8px;" class="text_1"><b>e-mail</b>: <script type="text/javascript">document.write(wmail(mail));</script>< /p><br>:)

PS Pisz mój nick poprawnie - duże "G" :)



DJ_ProG, nie podałeś mu jak zdefiniować stałą w PHP, lecz zmienną.
Lepiej tu użyć stałej.
define("mail", "adres@domena.net");
a później:
echo(mail);

Dlaczego niby lepiej użyć stałej? Więcej tylko kodu :P
A zastosowanie w tym wypadku takie same.

Jak zmienna ma mieć taką samą wartość przez cały czas to jest stałą i powinna być zdefiniowana jako stała.


Jak zmienna ma mieć taką samą wartość przez cały czas to jest stałą i powinna być zdefiniowana jako stała.

A czy to jakiś obowiązek? Złamię prawo jeśli zamiast stałej w takiej sytuacji dałbym zmienną ? Gdzie jest napisane o obowiązku stosowania stałych?

Ok koledzy ale teraz pojawil sie taki problem po wpisaniu tego kodu:
Na samej gorze strony parser zostawil jakies smieci po interpretacji kodu php takie oto znaki "ďťż" tam własnie wpisałem funkcje na początku sekcji body <?php include('nazwa_pliku.php'); ?>
widac to na stronie w ktorej to wstawilem http://contra-riskmanagement.pl/
Jak to zlikwidować?
Użytkownik Dogz edytował ten post 06 październik 2007, 11:26
Wygląda to jak BOM z UTF-8, sprawdź w jakich kodowaniach masz pliki, których używasz (tekstowe, czyli html, php, css, js). Cała strona ma zadeklarowany ISO-8859-2, być może ten inkludowany php był napisany w innym edytorze, który zapisał to w UTF-8.
Tak na marginesie, to w CSS jest możliwość zdefiniowania stałych tekstowych.


Wygląda to jak BOM z UTF-8, sprawdź w jakich kodowaniach masz pliki, których używasz (tekstowe, czyli html, php, css, js). Cała strona ma zadeklarowany ISO-8859-2, być może ten inkludowany php był napisany w innym edytorze, który zapisał to w UTF-8.
Tak na marginesie, to w CSS jest możliwość zdefiniowania stałych tekstowych.


Całość, wraz z tym php includowanym edytowałem w Notepad++ wiec moze inaczej zakodowal ten includowany, czyli co powinienem zrobic? Zakodowac w ANSI czy w UTF-8?
Chodnik jakbys mogl to podaj sposob tworzenia stałych w CSS. :naughty:
Użytkownik Dogz edytował ten post 06 październik 2007, 12:31
Co do tych śmieci, musiałeś je po prostu dopisać :P
Otwórz plik z layoutem i wywal te znaki - są pod znacznikiem "<BODY>" ;)

PS Znalazłem :P http://icant.co.uk/a...s/cssconstants/

Tych smieci nie dopisałem to parser je generuje, chodzi mi jak je zlikwidować

Sprawdziłem na pewno i te znaki to BOM, czyli pierwsze trzy bajty w UTF-8, które określają porządek odczytywania bajtów w znakach zapisanych na dwóch bajtach. Notepad dodaje bom obowiązkowo do utf, ale notepad++ ma już opcję, która to pozwala określić, w menu Format. Poza tym na pasku stanu po prawej stronie jest napisane jakie jest kodowanie. W twoim przypadku powinno to być ISO-8859-2, bo taka jest strona, ale nie ma to znaczenia dla pliku php, jeżeli nie ma w nim polskich znaków. Jedyne, co przeszkadza, to ten trzybajtowy nagłówek. Zmień kodowanie w notepadzie i powinny te znaki zniknąć.
Co do stałych w CSS: miałem na myśli konkretnie to, co ty chcesz zrobić. Można to zrobić tak:
data_m:before{content:"Data ostatniej modyfikacji: ";}
Zamiast data_m może tam być określenie konkretnego znacznika, np:
span#dodatkowy:before....
W takim przypadku, kiedy css znajdzie ten element, to przed nim umieści to, co ma zdefiniowane jako content. Istnieje jeszcze pseudoselektor after do dopisywania tekstu po elemencie. Myślę, że przy niewielkich zmianach kodu da się ten mechanizm wykorzystać do określenia adresu e-mail w arkuszu CSS.

Dobrze to w takim razie dlaczego dokładnie w tym samym miejscu co umiesciłem kod <?php include('nazwa_pliku.php'); ?> Występują te krzaczki?

No to raczej normalne, bo one są zapisane w pliku nazwa_pliku.php. Pokażą się tam, gdzie będzie wstawiony kod tego pliku. Żeby się przekonać to uruchom w notepad++ opcję Pluginy->HEX-Editor->View in HEX, wtedy zobaczysz, że w pliku php na początku one są.

Czyli co radzisz zrobic? Kodowanie w tym pliku w Notepadzie++ ustawione bylo chyba na ANSI.

No to wywal te trzy znaki w hexedytorze i nie pokażą się na stronie, jeżeli kodowanie jest ANSI. Jeżeli jest UTF to zmień na ansi i sprawdź, czy te znaki zniknęły i ewentualnie je wywal. ten nagłówek jest tylko do UTF i nie jest wymagany.

Ok działa skasowalem to w HEX editorze.
Więc znalazlem sposób na te zmienne, co prawda chodzilo mi o stale i w CSS ale takie rozwiązanie tez dobre no i działa!
Dzieki za pomoc :)

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.