• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pojedyncze litery "i" , "z" , "w" na końcu wierszy.

VPS Starter Arubacloud
+1 głos
3,024 wizyt
pytanie zadane 9 grudnia 2017 w HTML i CSS przez tonyone Użytkownik (530 p.)
Witam, mam pytanie czy jest jakieś rozwiązanie na to aby podczas tworzenia strony na końcu wiersza nie pojawiały się Pojedyncze litery "i" , "z" , "w" w tekstach ? Czy jest jakis style w CSS lub cokolwiek innego ?
komentarz 10 grudnia 2017 przez ScriptyChris Mędrzec (190,190 p.)

2 odpowiedzi

0 głosów
odpowiedź 9 grudnia 2017 przez Tomek Sochacki Ekspert (227,510 p.)
edycja 9 grudnia 2017 przez Tomek Sochacki

W CSS chyba się nie da, przynajmniej ja nie umiem.

Jedyne co mi przychodzi na myśl tak na szybko to pobrać w JavaScript tekst i metodą String.prototype.replace dodać przed pojedynczymi literami twardą spację (U+00A0) w miejsce spacji zwykłej (U+0020). Wtedy może będzie to tak działać, ale pewny nie jestem. Jak znajdę chwilę to spróbuje coś zmalować na codepen i zobaczę.

EDIT:

Tak na szybko w codepen naskrobałem coś takiego:

https://codepen.io/anon/pen/BmXPqr?editors=1011

Mój zamysł był taki, aby użyć wzorca:

/\x20([a-z])\x20/gi

do wyszukania w ciągu liter otoczonych z obu stron spacją, i następnie zamienić to na tę samą literę, ale otoczoną dwoma twardymi spacjami:

'\u00A0$1\u00A0'

Teoretycznie można by wyłączyć flagę case insensitive bo w sumie te pojedyncze litery zawsze są małe. Nie ma też polskich znaków mogących być samodzielnymi dlatego wystarczy [a-z] albo wskazanie tych kilku możliwych.

Tak na szybko jak zmniejszam sobie okna codepen to nie zostają mi nigdy pojedyncze literki, ale potestuj sobie na jakiś innych tekstach jeszcze, bo to takie szybkie rozwiązanie, a nie chce mi się już dzisiaj przy sobocie siedzieć nad testowaniem tego.

Daj znać czy coś pomogło, czy pomysł do kosza :) ?

Pozdrawiam

1
komentarz 10 grudnia 2017 przez niezalogowany

'\u00A0$1\u00A0'

Pierwszy biały znak chyba nie powinien być zamieniany na twardą spację.


/\x20([a-z])\x20/gi

Spacja (x20) działa ok, dopóki Pani Grażynka nie wklei tekstu, w którym przed pojedynczą literą jest enter

komentarz 10 grudnia 2017 przez Tomek Sochacki Ekspert (227,510 p.)
fakt, zapomniałem szczerze mówiąc o enterach, wzorzec ten zrobiłem tak na szybko i tylko potestowałem sobie na jednym tekście, plusik za znalezienie buga :)

Ale widzę, że już są inne lepsze odpowiedzi więc nie będę rozwijał mojego wzorca.

Pozdrawiam!

Podobne pytania

0 głosów
1 odpowiedź 469 wizyt
0 głosów
1 odpowiedź 407 wizyt
0 głosów
4 odpowiedzi 754 wizyt

92,452 zapytań

141,262 odpowiedzi

319,079 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...