2012-01-31 16 views
6

MediaWiki pictures może być ustawiony na określony rozmiar z prostym formatowaniem.Czy istnieje sposób automatycznej zmiany rozmiaru obrazów MediaWiki w zależności od rozmiaru ekranu?

Zmienia rozmiar w locie w zależności od rozmiaru przeglądarki/ekranu.

Czy obrazy można zmienić tak, jak tabele?

(obrazy wewnątrz stołach nie działa!)

+1

Miałem to samo pytanie i widziałem z poniższych odpowiedzi, że nie można mieć kilku zdjęć o różnych względnych rozmiarach. Napisałem więc rozszerzenie mediawiki: https://www.mediawiki.org/wiki/Extension:AdaptiveThumb –

+1

@ThorstenStaerk: sugeruję, aby dodać to jako nową odpowiedź! – Wikis

Odpowiedz

4

Miałem to samo pytanie i widziałem z powyższych odpowiedzi (teraz są poniżej), że nie można mieć kilku zdjęć o różnych względnych rozmiarach. Napisałem więc rozszerzenie mediawiki zezwalające na to: http://mediawiki.org/wiki/Extension:AdaptiveThumb

1

W skrócie, nie, nie ma łatwego sposobu, aby to zrobić. Możliwe, że można to zrobić za pomocą mnóstwa skrzypcowych skryptów Javascript, ale nie jestem świadomy, że ktokolwiek próbował tego, a implementacja nie byłaby trywialna.

+1

znajdziesz tam, gdzie zgłaszać błędy na wypadek, gdyby to nie działało dla Ciebie :) –

0

Krótka odpowiedź brzmi: nie. Długa odpowiedź brzmi: musisz napisać JavaScript, który może określić rozdzielczość ekranu użytkownika i zapisać go w pliku cookie. Najprawdopodobniej będzie to wykonane w pliku common.js, z wyjątkiem jednego na miliard użytkowników. który nigdy nie był na stronie i udaje się przejść bezpośrednio do strony z obrazem o dynamicznym rozmiarze (mam nadzieję, że nie zamieścisz czegoś takiego na głównej stronie), informacje te będą już dostępne, gdy dotrą do strona. Strona może następnie użyć tych zmiennych, aby ustawić rozmiar na {{#expr:(File height * % of screen you want it to take)*(screen height)}}x{{#expr:(File width * % of screen you want it to take)*(screen width)}}px. Gospodarz mojej wiki mówi, że jest w trakcie pisania nowego rozszerzenia, które może być w stanie to zrobić jako część żądania dla sekcji <div style="overflow-x: scroll; width: {{#expr:(File width * % of screen you want it to take)*(screen width)}}px;">, którą chcę utworzyć. Jeśli znajdziesz coś jeszcze przede mną, zaktualizuj ten wpis, aby go zobaczyć. Dzięki. : D

+0

Dlaczego miałbyś nawet napisać rozdzielczość ekranu użytkownika do pliku cookie?To coś, co jest na żywo i zmienia się w locie. Jedna sekunda to 1400 pikseli, druga sekunda to 600 pikseli. – kiradotee

3

Dynamiczna zmiana rozmiaru jak przeglądarka jest zmieniany: Połóż kolejną linię na początku pliku CSS. \ skins \ common \ shared.css

img { max-width: 100%; height: auto; width: auto\9; /* ie8 */ } 

Każdy skalowalny obraz będzie umieszczony wewnątrz <div></div>

<div>[[Image:MyImage.png]]</div> 

Czytaj więcej tutaj: http://www.mediawiki.org/wiki/Help_talk:Images

1

Możesz ustawić hak CSS.

Mediawiki pozwala zawierać zmienne jak alt tekstu, w tym w tej zmiennej specjalny ciąg takich jak w100 lub resizeable pozwoli Ci kierować element z CSS:

img[alt=~w100] { width: 100% !important; height: auto !important; } 

Należy pamiętać, że od ciebie używają alt dla rzeczy, które nie są przeznaczone do użycia i !important w CSS (ponieważ MW określa rozmiar jako styl elementu), należy tego unikać w jak największym stopniu i ma służyć jako ostateczność.

Powiązane problemy