| | |
| Stránka: 1 z 1
| [ Príspevkov: 26 ] | |
Autor | Správa |
---|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal baumax: 18.11.2016 9:05 | |
|
Ako by ste riesili problem zobrazenia dlhej www adresy? napr. mam miesto na zobrazenie, kde vojde 60 znakov a www adresa ma 1000 znakov
clovek vlozi prispevok so 100 znakovou www adresou a chcem aby to bolo funkcne, klikatelne, ale aby bolo zobrazenych len 60 znakov a napr za tymi 60 znamki budu 3 bodky
t.j. obrazne adresu
htpp://www.velmidlhaadresa.sk mi zobrazi prehliadac presne takto: htpp://www.velmidlha...
|
|
Registrovaný: 20.01.07 Prihlásený: 12.02.24 Príspevky: 401 Témy: 87 | Napísal dulius: 18.11.2016 9:55 | |
|
no, tie 3 bodky asi nejako special treba ale kebyze si ich nepotreboval, tu mas riesenie: Kód: <div class="nazov1">dlha www adresa</div> a takto cca si zadefinujes ten class: .nazov1 {width:100px;overflow:hidden;height:50px;line-height:50px;}
|
|
Registrovaný: 28.02.11 Prihlásený: 26.04.24 Príspevky: 197 Témy: 6 Bydlisko: Bratislava | Napísal weroro: 18.11.2016 10:08 | |
|
Dulius: Ak ti samotny overflow: hidden zobrazuje bodky, tak je to asi iba tvojim prehliadačom. Bodky je treba zadefinovať. Toto je riešenie pre baumaxa: Kód: .orezanie-dlhej-adresy{ width: 180px; display: inline-block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
_________________ Neznalosť zložitých operácií necháva myseľ otvorenú pre geniálne riešenia založené na jednoduchosti. |
|
Registrovaný: 20.01.07 Prihlásený: 12.02.24 Príspevky: 401 Témy: 87 | Napísal dulius: 18.11.2016 10:10 | |
|
weroro: pisal som, moje riesenie neriesilo bodky, len orezanie
|
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.11.2016 10:30 | |
|
vdaka chlapi a keby som to chcel spravit / aplikovat len na tu www adresu, slo by to? t.j. text text text www.dlhaadresa.sk text text by som chcel zobrazit v prehliadaci len ako: text text www.dlha... text text
|
|
| Napísal Lessik: 18.11.2016 10:33 | |
|
<div>text, ktory neorezem<span class="element-ktory-obsahuje-len-www-adresu">www.dlha...</span></div>
|
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.11.2016 10:36 | |
|
no ale ako to oddelit? technicky, text od www adresy lebo clovek zada ten text aj www adresu
|
|
Registrovaný: 20.01.07 Prihlásený: 12.02.24 Príspevky: 401 Témy: 87 | Napísal dulius: 18.11.2016 10:46 | |
|
predpokladam, ze cez nejake regularne vyrazy, ale nie som v tom majster ... len myslim, ze regularny vyraz najde v stringu www adresu a spracuje ju na to co chces, t.j skratenu verziu s 3 bodkami
|
|
Registrovaný: 08.08.09 Príspevky: 12449 Témy: 39 | Napísal killer: 18.11.2016 10:47 | |
|
Kam zadá? No popis problému výborný. Poriadne napíš, čo vlastne chceš.
_________________ always is always wrong |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.11.2016 10:54 | |
|
input field je text area - tam clovek zada ten text, ktory moze obsahovat aj www adresu a tam ak je www adresa to chcem skratit www adresu v texte mam takto osetrenu teraz: Kód: $a["text"] = eregi_replace("(^| |>)(www([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $a["text"]); //$a["text"] = eregi_replace("(^| |>)(http([s]?)://www([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $a["text"]); $a["text"] = eregi_replace("(^| |>)(http([s]?)://([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $a["text"]);
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 18.11.2016 13:07 | |
|
A nejde náhodou len o toto? Kód: <a href="velmidlhaadresa.com">velmidl...</a>
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.11.2016 13:10 | |
|
ano, ide o to, aby dlha www adresa bola zobrazena skratene .. ostatny text ktory je pred a za nou normalne
|
|
Registrovaný: 28.02.11 Prihlásený: 26.04.24 Príspevky: 197 Témy: 6 Bydlisko: Bratislava | Napísal weroro: 18.11.2016 13:19 | |
|
Pokiaľ chceš mať text napr.: Kód: Lorem ipsum dolor sit amet www.nejaka-totalne-dlha-adresa-s-extra-brutal-mega-vela-parametrami.get consectetur adipiscing elit. a v ňom skrátiť adresu na takýto tvar: Kód: Lorem ipsum dolor sit amet www.nejaka-totalne... consectetur adipiscing elit. a zároveň zachovať to, že sa dá kliknúť na ten odkaz, stačí naozaj použiť iba moje riešenie. v HTML to bude vyzerať nejak takto: Kód: <p>Lorem ipsum dolor sit amet <a href="http://www.nejaka-totalne-dlha-adresa-s-extra-brutal-mega-vela-parametrami.get" class="orezanie-dlhej-adresy">www.nejaka-totalne-dlha-adresa-s-extra-brutal-mega-vela-parametrami.get</a> consectetur adipiscing elit.</p> výsledok bude vyzerať takto: Kód: Lorem ipsum dolor sit amet www.nejaka-totalne... consectetur adipiscing elit.
_________________ Neznalosť zložitých operácií necháva myseľ otvorenú pre geniálne riešenia založené na jednoduchosti. |
|
| Napísal Lessik: 18.11.2016 13:21 | |
|
mate-zaujimave-video-sem-s-nim-vt165786-210.htmlchod do tohto vlakna, inspectni si lubovolny prispevok, ktory obsahuje link. uvidis <a class="postlink>, takze ty potrebujes aby tvoj system, do ktoreho uzivatel napise, rozpoznal, co je URL a co obycany text. tak? btw, aplikuj si vyssie uvedene CSS na <a> tag, ktory si si inspectol + display: inline-block, aby si mohol aplikovat width prip. max-width property. vsetko pekne funguje.
|
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.11.2016 13:30 | |
|
vdaka ludia, s Vasou pomocou to mam vyriesene
|
|
Registrovaný: 08.08.09 Príspevky: 12449 Témy: 39 | Napísal killer: 18.11.2016 13:32 | |
|
Len dúfam že na to nepoužívaš ten eregi_replace, dôvod v linku » červený rámik
_________________ always is always wrong |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.11.2016 13:50 | |
|
pouzivam, viem, o chvilu to nebude fungovat, ale to este potrva, zmenim to
|
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 22.11.2016 10:48 | |
|
weroro píše: Pokiaľ chceš mať text napr.: Kód: Lorem ipsum dolor sit amet www.nejaka-totalne-dlha-adresa-s-extra-brutal-mega-vela-parametrami.get consectetur adipiscing elit. a v ňom skrátiť adresu na takýto tvar:....[/code] nedari sa mi to implementovat, pls help ... 1. tvoj kod mi tu skratenu cast nejako nadvihne, vid: http://i.imgur.com/le0tvoN.png2. ako to mam riesit ak ten text taham z databazy? moja cast kodu, kde to zobrazujem a kde potrebujem ten class zaimplementovat> Kód: while ($zaznam = mysql_fetch_array($select)) { $zaznam["link"] = eregi_replace("(^| |>)(www([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $zaznam["link"]); $zaznam["link"] = eregi_replace("(^| |>)(http([s]?)://([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $zaznam["link"]); ... potom skratim na 1 riadok na 50 znakov: $rozdelena_linka = wordwrap($zaznam["link"], 50, "\n", true);
a potom to zobrazim:
print ' <td> '.strip_tags($rozdelena_linka,'<a>').' </td>';
|
|
Registrovaný: 28.02.11 Prihlásený: 26.04.24 Príspevky: 197 Témy: 6 Bydlisko: Bratislava | Napísal weroro: 22.11.2016 16:34 | |
|
Pridaj do toho môjho CSS tento riadok: Kód: vertical-align: text-bottom;
_________________ Neznalosť zložitých operácií necháva myseľ otvorenú pre geniálne riešenia založené na jednoduchosti. |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 23.11.2016 8:45 | |
|
vdaka a vies mi poradit este s tou implementaciou? toto je kod, ktory zobrazi tu cast textu s www adresou/ami ... a ako tam ten class hodim? Kód: print ' <td> '.strip_tags($rozdelena_linka,'<a>').' </td>';
|
|
Registrovaný: 28.02.11 Prihlásený: 26.04.24 Príspevky: 197 Témy: 6 Bydlisko: Bratislava | Napísal weroro: 23.11.2016 12:02 | |
|
Ak to takto skracuješ na strane PHP, môje riešenie nepotrebuješ.
_________________ Neznalosť zložitých operácií necháva myseľ otvorenú pre geniálne riešenia založené na jednoduchosti. |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 23.11.2016 12:16 | |
|
ale ved ja to neskracujem na PHP strane, len zalamujem riadky, tymto: $rozdelena_linka = wordwrap($zaznam["link"], 50, "\n", true); a nechcem nic zalamovat, chcem to skratenie ... dik
|
|
Registrovaný: 28.02.11 Prihlásený: 26.04.24 Príspevky: 197 Témy: 6 Bydlisko: Bratislava | Napísal weroro: 23.11.2016 14:07 | |
|
Toto nerob: Kód: $rozdelena_linka = wordwrap($zaznam["link"], 50, "\n", true); nebude sa na to dať kliknúť. Tú triedu pridáš takto: Kód: $zaznam["link"] = eregi_replace("(^| |>)(www([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href="http://\\2" target="_blank" class="orezanie-dlhej-adresy">\\2</a>", $zaznam["link"]); $zaznam["link"] = eregi_replace("(^| |>)(http([s]?)://([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href="\\2" target="_blank" class="orezanie-dlhej-adresy">\\2</a>", $zaznam["link"]);
_________________ Neznalosť zložitých operácií necháva myseľ otvorenú pre geniálne riešenia založené na jednoduchosti. |
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 23.11.2016 14:48 | |
|
|
|
Registrovaný: 11.12.07 Prihlásený: 12.02.24 Príspevky: 487 Témy: 138 Bydlisko: Bytča | Napísal autor témy baumax: 18.12.2016 17:34 | |
|
Nakoniec to nepracuje korektne, sakra. Problem je ten, ze on si tu dlzku rezervuje a ked je www adresa kratsia, da tam medzeru presne aby vyplnil tu definovanu dlzku. Vyzera to presne takto: http://i.imgur.com/I475vy9.pngPri dlhej adrese to pracuje korektne ... Neviem ako na to, napadlo ma, ze len proste to pravidlo dat cez podmienku if (ak www adresa v danom texte je dlhsia ako X znakov - a to sa asi len da zistit nejako cez regularne vyrazy? ... ) - www adries moze byt aj viac v retazci s ktorym pracujem Pripajam presny kod na testing> Kód: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> .cut_long_address2 { width: 600px; display: inline-block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; vertical-align: text-bottom; } </style> <?php $db["text"] = "text https://www.kratkaadresa.sk/ a dalsi text";
$db["text"] = eregi_replace("(^| |>)(www([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"http://\\2\" target=\"_blank\" class=\"cut_long_address2\">\\2</a>", $db["text"]);
$db["text"] = eregi_replace("(^| |>)(http([s]?)://([.]?[a-zA-Z0-9_/-?])[^< ]*)", "\\1<a href=\"\\2\" target=\"_blank\" class=\"cut_long_address2\">\\2</a>", $db["text"]);
echo $db["text"]; ?>
|
|
| Stránka: 1 z 1
| [ Príspevkov: 26 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|