webfejlesztés

HTML-CSS kérdésem lenne.

Adott egy fix szélességű div bal oldalt (menü). Ennek van egy float: left értéke, hogy a tartalom jobb oldalra kerüljön hozzá képest. A jobb oldali “kék” div kapott egy overflow: hidden értéket, hogy teljes szélességű legyen. Ebbe a jobb oldali “kék” div-be kerülne be a tartalom “piros” div középre igazítva.
Azt szeretném elérni, hogy ha csökkentem a böngésző szélességét, akkor a “kék” div automatikusan ugorjon le a menü alá, ha a szélessége kisebb lenne, mint a “piros” div (gyermek) szélessége. Ez működik is akkor, ha min-width értéket állítok a “kék” div-nek.
A problémám az az, hogy a “piros” div szélessége változhat, azaz előre nem tudom megmondani, hogy hány pixel szélességű lesz. Így nem tudom milyen min-width értéket kell állítani a “kék” div-nek.

A kérdésem az, hogy valahogy meg lehet mondani a “kék” div-nek, hogy a min-width értéke a gyermekétől, azaz a “piros” div-től származzon? Vagy valahogy máshogy megadni, hogy ne lehessen kisebb, mint a “piros” div?

Persze Angular projekt révén menüre kattintáskor felül tudom írni az értéket, de jobb szeretném, ha ez HTML-CSS-ből lenne megoldva.

Gondolkodtam html table megoldáson is, azaz, hogy a “kék” div helyett egy table legyen, de sehogy sem tudtam rávenni a táblázatot, hogy vegye fel a maradék szélességet.

(Vagy lehet ez nem annyira illik az azonnali kérdésekbe? :D)

1 Like

Érteni értem a problémát, de olyan szép ahogy leírtad :D

1 Like

A Bootstrap nem jó a projektedhez? Azzal minden sokkal gyorsabb és egyszerűbb.

Flex-box nem lehet megoldas?

( A Complete Guide to Flexbox | CSS-Tricks - CSS-Tricks )

Mi lenne ha grid-vel probalnad meg.
A div-et tudod grid on grid be rakni (vagy area-zni).
https://open.nytimes.com/css-grid-for-designers-f74a883b98f5?ref=webdesignernews.com

persze ennel meg kell csinalnod a meda query-ket, ellenben a “nagyon szupi” bootstrap-vel ;)

Köszi mindenkinek, ezeknek utána kell néznem.
Ami biztos, hogy Angular marad, mert minden más projektem az. Bár erre az oldalra egyelőre felesleges az Angular, de hosszabb távon már lehet szükség lesz rá.

Mindharom cucc css-only, nagyon szepen megfer az Angular-ral.

1 Like

Az az igazság, hogy maga a webfejlesztés nem az én asztalom. Mivel saját dizájnt és elrendezést szeretnék, emiatt a bootsrap szerintem nem érdekes. Persze gondolom testre lehet szabni az egyes részeket, de akkor már mindegy, ha elölről indulok el. De amúgy alapvetően nem egy bonyolult oldalról van szó.
Úgy látom, hogy a flex és a grid-nek jobban utána kell olvasnom, így elsőre a grid-nél nem egyértelmű, hogy ha van két box egymás mellett és kisebbre húzom a képernyőt, akkor a második automatikusan leugrik? Ha ez nem működhet így, akkor valószínű a flex lesz az igazi így első ránézésre. Mondom, kb 1-2 percet néztem mindhármat, tehát egyiket sem olvastam még el rendesen.

Elakadtam ismét :)

Van egy json fájlom, aminek nem json a kiterjesztése. Ezt szeretném visszaküldeni úgy, hogy a mime típusa json legyen, hogy lehet ezt megvalósítani Angulárban?
Angular 8 fut. Be van építve egy router, amivel meg tudom csinálni, hogy { path: “file”, redirectTo: “/assets/file” }, de így nem lesz json a mime típusa.
Van erre valami gyógyír? :)

image

Köszi!
Ez ok, ezt ismertem, mert sok api hívást hajtok végre…

Rájöttem közben, hogy ezt nem angulárral kell megoldanom, mert az beleteszi a “marhaságait”. Ezt közvetlenül apache-csal kellett megoldanom, csak kellett egy-két nap, mire leesett, hogy azzal baromi egyszerű. :)

Nagyon ígéretesnek tűnik nekem:

Úgy tűnik, a Coda-t is ideje lesz lecserélnem a PhpStorm-ra…

Igen, a Coda meg a PhpStorm nem egy ligában játszik.

1 Like

Mondjuk php alatt úgy látom, hogy mindenki a Laravel frameworkot használja. Én sosem használtam, bár láttam kódokat, hogy sokkal egyszerűbb vele a php. Viszont úgy érzem, hogy a php-nak leágazóban van. Én épp most próbálom lecserélni swift-re. Persze azért swiftre, mert egyrészt szeretem, másrészt szerintem átláthatóbb, harmadrészt szerintem gyorsabb is vele a programozás, negyedrészt az erős típusosság miatt, ami szerintem óriási előny. Ha nem ismerném a swiftet, akkor biztos pythonra állnék át majdnem ugyanazokért amiért swiftre.
Ugyanakkor PhpStormot én is használom, Codat nagyon régen nem. És - Laravel nélkül is - óriási dolgokra képes a PhpStorm (meg a PyCharm is)!

A Panic már több, mint egy éve bejelentette a Coda utódját, azonban semmi jele, hogy jobb lenne, mint a PhpStorm… Eddig türelmes voltam, de ha otthonra kényszerülök hosszabb időre a vírus miatt, inkább nem a Panicnak adom a következő összeget, és 10 év után újraírom inkább a belső folyamatmenedzsment szoftverünket. Nagyon sokat változott a technológia, ráadásul egy befejezetlen, rossz kódot toldozgatok-foldozgatok azóta, amit örököltem…

Szerintem a Laravel nagyon jó, én azért szeretem, mert hasonlít a Ruby On Railsre. Nagyon jó a supportja is, rengeteg dokumentum, video, minden van hozza. Ez Jeffrey Way tutorialjaiból nőtte ki magát:

https://laracasts.com/series?curated

Ez például a PhpStormos tutorialja:

https://laracasts.com/series/how-to-be-awesome-in-phpstorm

Nem tudom, hogy a phpnak kezd-e leáldozni, azért rengeteg projekt van még phpban, és php 5-től már benne van type hint, úgyhogy lehet benne típusosan programozni. Swiftben hogy fejlesztesz webre?

1 Like

Most kezdem el kitalálni. :slight_smile:
Még a Swift Ubuntu támogatása után az IBM beállít mögé és fejlesztett egy Libraryt, hogy webszerverként könnyen be lehessen vetni. Bár úgy tudom, hogy most már leállította a fejlesztést. Közben a Vapor (nem tudom kik ők; https://vapor.codes) elkezdték fejleszteni a saját megoldásukat. Ha jól tudom elkötelezettek amellett, hogy natív Swift kód legyen az egész projekt mögött. Ehhez persze folyamatosan alakítják át a kódjukat, hogy támogassák a hivatalos Swift adta lehetőségeket. Hogy ez mennyire sikerült nekik, annak nem néztem utána. :slight_smile:
A Vapor 3. verzió így utólag egész elterjedt lett, ahogy látom. Most már a 4. verziót fejlesztik és már beépítették ebbe a verzióba a Swift 5.2 adta lehetőségeket. Igaz a Swift 5.2 még csak most jelent meg, de már támogatják az újdonságait, így még könnyebb a fejlesztés. Már rc11-nél járnak, állítólag nincs messze a végleges kiadás. Ahogy nézem a 4.0 dokumentációját készítik folyamatosan, mert a 3.0-hoz képest nagyon hiányos még.
Szóval elsősorban backendre használnám. Egy webszervert létrehozni pár perc alatt lehet. Tehát pl Docker környezetbe kiválóan be lehet tenni akár egy nginx mögé. (Készít a Vapor is és a Swift is Dockereket.)
Kopek a Vapor frontendre is (nyilván), ehhez támogatják a Leaf szintaktikát. Ugyanakkor frontendnél 100%, hogy maradok Angulárnál. Azért a js és böngésző támogatás messze áll a swifttől. Persze nyilván meg lehet oldani, de nem kis szívás és plusz munka árán.
Valamint azt olvastam, hogy a Swift 5.3 ráfekszenek egyrészt a stabilitásra, optimalizálásra, másrészt arra, hogy több Linux disztribúciót támogassanak plusz Windows-t.
Egyébként nyilván még ott tartok, hogy ellenőrzöm, hogy minden működni fog-e mielőtt nekikezdek a backend tényleges programozására. Már szinte minden működik ami kell: webszerverként való működés, api végpont tesztelése swiften belül maradva, JWT kommunikáció. Már csak a jelszó salt és a Postgresql adatbázissal való kapcsolat van hátra. Mindkettőre van megoldása a Swiftnek/Vapornak.

Csak érdekesség képpen: A JWT előállítása kb annyiból áll, hogy

  1. létrehozok egy osztályt ami a jwt payload mezőiből áll (pl.: iss, iat, exp), tehát mint egy interface típus akár php akár Angularban.
  2. Majd van egy JWTSigner osztály, ahol megadom, hogy milyen titkosítást használjon, megadhatom kézzel a privát kulcsot vagy tud generálni is egy sorból, ha kell.
  3. Majd létrehozok egy példányt a payloadból és egy sorból “megkérem” a JWTSignert, hogy írja alá. És megkapom a szép JWT karakterláncot.

Mondjuk annyi, hogy az Payload osztályának kell tartalmaznia egy verify funkciót, amit meghív az ellenőrzéskor automatikusan, és a saját JWT aláírás ellenőrzése is annyi, hogy ugyanazt a JWTSigner-t ugyanazzal a privát kulccsal megkérem, hogy ellenőrizze. A saját payload értékeket, mint pl lejárat már nekem kell ellenőrizni, de a lejárat is egy sor, mert arra is tartalmaz a Vapor beépített funkciót.
Szóval ezt csak azért írom, mert baromi egyszerű összerakni egy ilyen projektet (így utólag) Swift + Vapor segítségével. Persze nyilván míg ide eljutottam több idő volt, nem volt olyan egyszerű, de azért, mert rögtön már a dokumentálatlan 4.0 verzióval kezdtem és így kicsit nehéz volt rájönnöm a működésre. :slight_smile: