Przyglądam się składni Markdown używanej w GitHub, ale oprócz zmiany rozmiaru obrazu do rozmiaru strony readme.md, nie mogę wymyślić, jak wyśrodkować na nim obraz.
Pandoc zaproponował ogólną składnię do opisywania treści tekstowych, które, gdyby stały się częścią standardu Markdown, ułatwiłyby centrowanie obrazów.
Przyglądałem się składni Markdown stosowanej w github [...], nie mogę wymyślić, jak wyśrodkować obraz
TL; DR
Nie, nie możesz polegać tylko na składni Markdown. Markdown nie przejmuje się pozycjonowaniem.
Uwaga: Niektóre procesory przeceny obsługują włączenie HTML (jak słusznie zauważył @ waldyr.ar), aw przypadku GitHub możesz wrócić do czegoś podobnego <div style="text-align:center"><img src="..." /></div>. Uważaj, że nie ma gwarancji, że obraz zostanie wyśrodkowany, jeśli twoje repozytorium jest rozwidlone w innym środowisku hostingowym (Codeplex, BitBucket, ...) lub jeśli dokument nie zostanie odczytany przez przeglądarkę (podgląd Sublime Text Markdown, MarkdownPad, VisualStudio Web Podgląd Essentials Markdown, ...).
Uwaga 2: Pamiętaj, że nawet w witrynie GitHub sposób renderowania przeceny nie jest jednolity. Na przykład wiki nie zezwala na takie sztuczki pozycyjne css.
Nieokreślona wersja
Składni Markdown nie przewiduje jedną z możliwości kontrolowania położenia obrazu.
W rzeczywistości, byłoby granicę przeciwko filozofii Markdown, aby umożliwić takie formatowanie, jak podano w „filozofii” sekcji
„Dokument sformatowany metodą Markdown powinien być dostępny do opublikowania w postaci niezmienionej, jako zwykły tekst, nie wyglądając, jakby został oznaczony tagami lub instrukcjami formatowania”.
Pliki Markdown są renderowane przez witrynę github.com za pomocą biblioteki Ruby Redcarpet .
Redcarpet udostępnia niektóre rozszerzenia (takie jak na przykład przekreślenie), które nie są częścią standardowej składni Markdown i zapewniają dodatkowe „funkcje”. Jednak żadne obsługiwane rozszerzenie nie pozwala wyśrodkować obrazu.
Dziękuję, rozwiązałem zbyt duży rozmiar obrazu. Szkoda za ich przepustowość, ale nie zostawili mi wyboru
Johnny Pauling
47
Działa to dobrze:<img align="..." src="..." alt="...">
Nux
@JohonnyPauling, jeśli martwisz się, że nie użyjesz zbyt dużej przepustowości github, możesz rzucić okiem na Raw Git , który obsługuje pliki przechowywane na GitHub, buforując je w swoim systemie. Tak więc tylko jeden dostęp jest wykonywany na zasobie w serwisie GitHub, co pozwala zaoszczędzić przepustowość.
danidemi
6
Oryginalne przeceny przetwarzają składnię przecen w obrębie znaczników zakresu. Tak więc coś takiego powinno działać: <span style="display:block;text-align:center">![Test Automation]Automated-Testing.png)</span>
Dakshinamurthy Karra
6
alignAtrybutu na imgtagu jest przestarzała jak HTML 4.01 i przestarzały jak HTML5.
taylorthurlow
602
Wynika to ze wsparcia Github:
Hej Waldyr
Markdown nie pozwala na bezpośrednie dostosowanie wyrównania (zobacz dokumenty tutaj: http://daringfireball.net/projects/markdown/syntax#img ), ale możesz po prostu użyć surowego znacznika HTML „img” i wykonać wyrównanie za pomocą funkcji wstawiania css.
Twoje zdrowie,
Tak więc możliwe jest, aby wyrównać obrazy! Musisz tylko użyć wbudowanego css, aby rozwiązać problem. Możesz wziąć przykład z mojego repozytorium github . Na dole pliku README.md znajduje się wyśrodkowany, wyrównany obraz. Dla uproszczenia możesz po prostu wykonać następujące czynności:
Dlaczego nie była to zaakceptowana odpowiedź, nie wiem. Ta odpowiedź faktycznie wyjaśnia pytającemu, jak wykonać zadanie.
Fergus In London
93
+1, nie dbam o to, czy jest to sprzeczne z filozofią obniżki cen, chcę tylko wyśrodkować obraz! : D
Gabriel Llamas
6
Tak, zejdźmy z filozofią obniżki cen, po prostu sprawmy, by wyglądało to ładnie: p
Thomas,
3
Wygląda na to, że działa (jak pokazano w repozytorium plakatu), ale CSS NIE jest obsługiwany w wiki Github. Każda próba określenia CSS była usuwana. Podobnie, określony atrybut wyrównania jest również usuwany, gdy próbuję to zrobić na wiki.
W ten sposób możesz stworzyć różnorodne opcje stylizacji i nadal utrzymywać obniżkę dodatkowego kodu. Oczywiście nie masz kontroli nad tym, co się stanie, jeśli ktoś inny użyje przeceny gdzie indziej, ale jest to ogólny problem ze stylem wszystkich dokumentów przeceny, które się dzieli.
Działa to świetnie, ale użycie kotwicy (#) zamiast ciągu zapytania (?) Jest prawdopodobnie lepszym rozwiązaniem, jak napisałem w tej odpowiedzi: stackoverflow.com/questions/255170/markdown-and-image-alignment/... - jednak nie Nie wierz, że github readme.md obsługuje definiowanie css.
drżenie
Idealne rozwiązanie dla tych, którzy prowadzą własną instancję GitLab!
Rozmiar obrazu został odpowiednio przeskalowany i wyśrodkowany, przynajmniej w moim lokalnym rendererze przeceny VS.
Następnie przekazałem zmiany do repozytorium i niestety zdałem sobie sprawę, że nie działa on dla pliku README.md GitHub . Niemniej jednak zostawię tę odpowiedź, ponieważ może pomóc komuś innemu.
W końcu zamiast tego użyłem starego dobrego tagu HTML:
Nie wydaje się to działać: szerokość tabeli zależy od szerokości jej zawartości. Nakłada także ramkę wokół obrazu (domyślny arkusz stylów github).
Richard Smith
Nie zdawałem sobie z tego sprawy. Poza GitHub w ten sposób wyśrodkowuję obrazy w Markdown.
afuzzyllama
0
TLDR;
Użyj tego HTML / CSS, aby dodać i wyśrodkować obraz i ustawić jego rozmiar na 60% szerokości miejsca na ekranie w pliku znaczników, co zwykle jest dobrą wartością początkową:
Zmień widthwartość CSS na dowolny procent lub usuń ją całkowicie, aby użyć domyślnego rozmiaru znacznika, który moim zdaniem wynosi 100% szerokości ekranu, jeśli obraz jest większy niż ekran, lub w przeciwnym razie jest to rzeczywista szerokość obrazu.
Gotowy!
Lub czytaj dalej, aby uzyskać znacznie więcej informacji.
Oto różne opcje HTML i CSS, które doskonale działają w plikach Markdown:
1. Wyśrodkuj i skonfiguruj (zmień rozmiar) WSZYSTKIE obrazy w pliku przeceny:
Po prostu skopiuj i wklej to na górze pliku Markdown, aby wyśrodkować i zmienić rozmiar wszystkich obrazów w pliku (a następnie wstaw dowolne obrazy z normalną składnią Markdown):
Lub ten sam kod jak powyżej, ale ze szczegółowymi komentarzami HTML i CSS, aby dokładnie wyjaśnić, co się dzieje:
<!-- (This is an HTML comment). Copy and paste this entire HTML `<style>...</style>` element (block)
to the top of your markdown file --><style>/* (This is a CSS comment). The below `img` style sets the default CSS styling for all images
hereafter in this markdown file. */
img
{/* Default display value is `inline-block`. Set it to `block` to prevent surrounding text from
wrapping around the image. Instead, `block` format will force the text to be above or below the
image, but never to the sides. */display:block;/* Common float options are `left`, `right`, and `none`. Set to `none` to override any previous
settings which might have been `left` or `right`. `left` causes the image to be to the left,
with text wrapped to the right of the image, and `right` causes the image to be to the right,
with text wrapped to its left, so long as `display:inline-block` is also used. */float:none;/* Set both the left and right margins to `auto` to cause the image to be centered. */margin-left:auto;margin-right:auto;/* You may also set the size of the image, in percent of width of the screen on which the image
is being viewed, for example. A good starting point is 60%. It will auto-scale and auto-size
the image no matter what screen or device it is being viewed on, maintaining proporptions and
not distorting it. */width:60%;/* You may optionally force a fixed size, or intentionally skew/distort an image by also
setting the height. Values for `width` and `height` are commonly set in either percent (%)
or pixels (px). Ex: `width:100%;` or `height:600px;`. *//* height:400px; */}</style>
Teraz, czy wstawisz obraz za pomocą markdown:
![](https://i.stack.imgur.com/RJj4x.png)
Lub HTML w pliku przeceny:
<imgsrc="https://i.stack.imgur.com/RJj4x.png">
... zostanie automatycznie wyśrodkowany i dopasowany do 60% szerokości widoku ekranu, jak opisano w komentarzach w HTML i CSS powyżej. (Oczywiście rozmiar 60% jest również bardzo łatwo zmienialny, a poniżej przedstawiam proste sposoby, aby zrobić to na zasadzie obraz po obrazie).
2. Wyśrodkuj i skonfiguruj obrazy indywidualnie dla każdego przypadku:
Niezależnie od tego, czy skopiowałeś i wkleiłeś powyższy <style>blok w górnej części pliku przeceny, zadziała to również, ponieważ zastępuje i ma pierwszeństwo przed ustawieniami stylu zakresu plików, które możesz ustawić powyżej:
Możesz również sformatować go w wielu liniach, takich jak ten, i nadal będzie działać:
<imgsrc="https://i.stack.imgur.com/RJj4x.png"alt="this is an optional description of the image to help the blind and show up in case the
image won't load"style="display:block;/* override the default display setting of `inline-block` */float:none;/* override any prior settings of `left` or `right` *//* set both the left and right margins to `auto` to center the image */margin-left:auto;margin-right:auto;width:60%;/* optionally resize the image to a screen percentage width if you want too */">
3. Oprócz wszystkich powyższych, możesz także tworzyć klasy stylów CSS, aby pomóc stylizować poszczególne obrazy:
Dodaj to wszystko na początku pliku przeceny.
<style>/* By default, make all images center-aligned, and 60% of the width
of the screen in size */
img
{display:block;float:none;margin-left:auto;margin-right:auto;width:60%;}/* Create a CSS class to style images to left-align, or "float left" */.leftAlign
{display:inline-block;float:left;/* provide a 15 pixel gap between the image and the text to its right */margin-right:15px;}/* Create a CSS class to style images to right-align, or "float right" */.rightAlign
{display:inline-block;float:right;/* provide a 15 pixel gap between the image and the text to its left */margin-left:15px;}</style>
Teraz twój imgblok CSS ustawił domyślne ustawienie dla obrazów, które mają być wyśrodkowane i 60% szerokości przestrzeni ekranu, ale możesz użyć klas leftAligni rightAlignCSS, aby zastąpić te ustawienia dla poszczególnych obrazów.
Na przykład ten obraz będzie wyśrodkowany i ma 60% rozmiaru (domyślnie ustawiłem powyżej):
<imgsrc="https://i.stack.imgur.com/RJj4x.png">
Ten obraz zostanie wyrównany do lewej strony , z zawijaniem tekstu po prawej stronie, przy użyciu leftAlignklasy CSS, którą właśnie stworzyliśmy powyżej!
4. Utwórz 3 klasy CSS, ale nie zmieniaj imgdomyślnych wartości przeceny
Inną opcją tego, co właśnie pokazaliśmy powyżej, w którym zmodyfikowaliśmy imgproperty:valueustawienia domyślne i utworzyliśmy 2 klasy, jest pozostawienie wszystkich domyślnych imgwłaściwości Markdown w spokoju, ale utworzenie 3 niestandardowych klas CSS, takich jak to:
<style>/* Create a CSS class to style images to center-align */.centerAlign
{display:block;float:none;/* Set both the left and right margins to `auto` to cause the image to be centered. */margin-left:auto;margin-right:auto;width:60%;}/* Create a CSS class to style images to left-align, or "float left" */.leftAlign
{display:inline-block;float:left;/* provide a 15 pixel gap between the image and the text to its right */margin-right:15px;width:60%;}/* Create a CSS class to style images to right-align, or "float right" */.rightAlign
{display:inline-block;float:right;/* provide a 15 pixel gap between the image and the text to its left */margin-left:15px;width:60%;}</style>
Zauważ, jak ręcznie ustawiłem widthwłaściwość za pomocą stylepowyższego atrybutu CSS , ale gdybym miał coś bardziej skomplikowanego, co chciałem zrobić, mógłbym również utworzyć dodatkowe klasy, dodając je wewnątrz <style>...</style>powyższego bloku:
/* custom CSS class to set a predefined "small" size for an image */
.small
{
width:20%;
/* set any other properties, as desired, inside this class too */
}
Teraz możesz przypisać wiele klas do tego samego obiektu, jak ten. Po prostu oddziel nazwy klas spacjami, NIE przecinkami . W przypadku sprzecznych ustawień uważam, że którekolwiek ustawienie będzie ostatnie, będzie obowiązywać, zastępując wszelkie wcześniej ustawione ustawienia. Powinno tak być również w przypadku, gdy ustawisz te same właściwości CSS wiele razy w tej samej klasie CSS lub w tym samym styleatrybucie HTML .
Ostatnią sztuczką jest ta, której nauczyłem się w tej odpowiedzi tutaj: Jak używać CSS do stylizowania wielu obrazów w inny sposób? . Jak widać powyżej, wszystkie 3 alignklasy CSS ustawiają szerokość obrazu na 60%. Dlatego to wspólne ustawienie można ustawić jednocześnie tak, jak chcesz, a następnie możesz ustawić szczegółowe ustawienia dla każdej klasy:
<style>/* set common properties for multiple CSS classes all at once */.centerAlign,.leftAlign,.rightAlign {width:60%;}/* Now set the specific properties for each class individually *//* Create a CSS class to style images to center-align */.centerAlign
{display:block;float:none;/* Set both the left and right margins to `auto` to cause the image to be centered. */margin-left:auto;margin-right:auto;}/* Create a CSS class to style images to left-align, or "float left" */.leftAlign
{display:inline-block;float:left;/* provide a 15 pixel gap between the image and the text to its right */margin-right:15px;}/* Create a CSS class to style images to right-align, or "float right" */.rightAlign
{display:inline-block;float:right;/* provide a 15 pixel gap between the image and the text to its left */margin-left:15px;}/* custom CSS class to set a predefined "small" size for an image */.small
{width:20%;/* set any other properties, as desired, inside this class too */}</style>
Więcej szczegółów:
1. Moje przemyślenia na temat HTML i CSS w Markdown
Jeśli o mnie chodzi, wszystko, co można zapisać w dokumencie Markdown i uzyskać pożądany wynik, to wszystko, czego szukamy, a nie jakaś składnia „czystego Markdown”.
W C i C ++ kompilator kompiluje się do kodu asemblera, a następnie asembluje się do binarnego. Czasami jednak potrzebna jest kontrola niskiego poziomu, którą może zapewnić tylko zestaw, a więc można napisać zestaw wbudowany bezpośrednio w pliku źródłowym C lub C ++. Asembler jest językiem „niższego poziomu” i można go pisać bezpośrednio w C i C ++.
Tak też jest ze zniżką. Markdown to język wysokiego poziomu, który jest interpretowany do HTML i CSS. Jednak tam, gdzie potrzebujemy dodatkowej kontroli, możemy po prostu „wstawić” niższy poziom HTML i CSS bezpośrednio do naszego pliku przeceny i nadal będzie on interpretowany poprawnie. W pewnym sensie zatem HTML i CSS są poprawną składnią „markdown”.
Tak więc, aby wyśrodkować obraz na przecenie, użyj HTML i CSS.
2. Standardowe wstawianie obrazu w przecenach:
Jak dodać podstawowy obraz w przecenie z domyślnym formatowaniem HTML i CSS „za kulisami”:
Możesz również opcjonalnie dodać opis w nawiasach kwadratowych otwierających. Szczerze mówiąc, nie jestem nawet pewien, co to robi, ale być może jest konwertowany na atrybut elementu HTML<img>alt , który jest wyświetlany w przypadku, gdy obraz nie może się załadować, i może być czytany przez czytniki ekranu dla osób niewidomych. A więc to przecena:
![this is my hexacopter I built](https://i.stack.imgur.com/RJj4x.png)
wygeneruje również ten wynik:
3. Więcej szczegółów na temat tego, co dzieje się w HTML / CSS podczas centrowania i zmiany rozmiaru obrazu w znaczniku:
Wyśrodkowanie obrazu w systemie Markdown wymaga użycia dodatkowej kontroli, którą HTML i CSS mogą nam dać bezpośrednio. Możesz wstawić i wyśrodkować indywidualny obraz w ten sposób:
<imgsrc="https://i.stack.imgur.com/RJj4x.png"alt="this is my hexacopter I built"style="display:block;float:none;margin-left:auto;margin-right:auto;">
Oto więcej informacji. o tym, co się tutaj dzieje:
<imgCzęść powyższego kodu HTML jest „ rozpocząć tag ”, a >na końcu jest HTML „ tag end ”.
Wszystko, od tagu początkowego do tagu końcowego, włącznie, tworzy ten img„ element ” HTML .
HTML img„tags” / „elementy” są używane do wstawiania obrazów w HTML.
Każde z przypisań w elemencie konfiguruje „ atrybut ” HTML .
Atrybutu „style” akceptuje CSS stylizacji , więc wszystko wewnątrz cudzysłów tutaj: style=""jest CSS property:valueklucz-wartość „ deklaracja ”.
Zauważ, że każda CSS „właściwość: deklaracja wartości” jest oddzielona średnikiem ( ;), podczas gdy każdy „atrybut” HTML w tym „elemencie” jest oddzielony spacją ( ).
Aby uzyskać obraz do centrum w naszym kodzie HTML i CSS powyżej przycisk „atrybutów” są po prostu srci stylete.
Ten altjest opcjonalny.
Wewnątrz HTML styleatrybutu, który akceptuje CSS stylizacji, najważniejsze deklaracje są wszystkie 4 pokazują, że: display:block, float:none, margin-left:auto, i margin-right:auto.
Jeśli wcześniej nic nie ustawiało tej floatwłaściwości , możesz pominąć tę deklarację, ale i tak warto ją mieć na wszelki wypadek.
Też jestem ciekawa. To wygląda na zrzut ekranu GitHub, ale Redcarpet zdecydowanie tego nie implementuje. Jak to zrobiłeś? Czy możesz połączyć się z plikiem na GitHub?
ELLIOTTCABLE
3
Jest to strona Jeckyll, więc GitHub analizuje kod, zanim jeszcze znajdzie się w repozytorium.
vdclouis
5
Tylko do Twojej wiadomości dla wszystkich, którzy rozważają zgłoszenie tego do uwagi moderatora: fakt, że odpowiedź nie działa, nie jest powodem do oznaczenia tego. Po prostu komentuj i / lub głosuj negatywnie. Nie zamierzam usuwać odpowiedzi z powodu nieścisłości technicznych. Jeśli vdclouis chce usunąć go sam, ponieważ społeczność uzna to za nieprzydatne, powinien to być jego wybór.
Odpowiedzi:
TL; DR
Nie, nie możesz polegać tylko na składni Markdown. Markdown nie przejmuje się pozycjonowaniem.
Uwaga: Niektóre procesory przeceny obsługują włączenie HTML (jak słusznie zauważył @ waldyr.ar), aw przypadku GitHub możesz wrócić do czegoś podobnego
<div style="text-align:center"><img src="..." /></div>
. Uważaj, że nie ma gwarancji, że obraz zostanie wyśrodkowany, jeśli twoje repozytorium jest rozwidlone w innym środowisku hostingowym (Codeplex, BitBucket, ...) lub jeśli dokument nie zostanie odczytany przez przeglądarkę (podgląd Sublime Text Markdown, MarkdownPad, VisualStudio Web Podgląd Essentials Markdown, ...).Uwaga 2: Pamiętaj, że nawet w witrynie GitHub sposób renderowania przeceny nie jest jednolity. Na przykład wiki nie zezwala na takie sztuczki pozycyjne css.
Nieokreślona wersja
Składni Markdown nie przewiduje jedną z możliwości kontrolowania położenia obrazu.
W rzeczywistości, byłoby granicę przeciwko filozofii Markdown, aby umożliwić takie formatowanie, jak podano w „filozofii” sekcji
Pliki Markdown są renderowane przez witrynę github.com za pomocą biblioteki Ruby Redcarpet .
Redcarpet udostępnia niektóre rozszerzenia (takie jak na przykład przekreślenie), które nie są częścią standardowej składni Markdown i zapewniają dodatkowe „funkcje”. Jednak żadne obsługiwane rozszerzenie nie pozwala wyśrodkować obrazu.
źródło
<img align="..." src="..." alt="...">
<span style="display:block;text-align:center">![Test Automation]Automated-Testing.png)</span>
align
Atrybutu naimg
tagu jest przestarzała jak HTML 4.01 i przestarzały jak HTML5.Wynika to ze wsparcia Github:
Tak więc możliwe jest, aby wyrównać obrazy! Musisz tylko użyć wbudowanego css, aby rozwiązać problem. Możesz wziąć przykład z mojego repozytorium github . Na dole pliku README.md znajduje się wyśrodkowany, wyrównany obraz. Dla uproszczenia możesz po prostu wykonać następujące czynności:
Chociaż, jak powiedział nulltoken, byłoby to sprzeczne z filozofią Markdown!
Ten kod z mojego pliku Readme :
Powoduje wyświetlenie tego obrazu wyjściowego, z wyjątkiem wyśrodkowania podczas przeglądania w GitHub:
źródło
align
atrybut nie jest obsługiwany w HTML5 ?Alternatywnie, jeśli masz kontrolę nad css, możesz uzyskać sprytne parametry URL i css .
Obniżka cen:
I CSS:
W ten sposób możesz stworzyć różnorodne opcje stylizacji i nadal utrzymywać obniżkę dodatkowego kodu. Oczywiście nie masz kontroli nad tym, co się stanie, jeśli ktoś inny użyje przeceny gdzie indziej, ale jest to ogólny problem ze stylem wszystkich dokumentów przeceny, które się dzieli.
źródło
Do wyrównania do lewej
Dla właściwego wyrównania
I do wyrównania do środka
Rozwidl tutaj , aby znaleźć w przyszłości odniesienia, jeśli uznasz to za przydatne.
źródło
Działa dla mnie na github
źródło
Możesz także zmienić rozmiar obrazu do pożądanej szerokości i wysokości . Na przykład:
Aby dodać wyśrodkowany podpis do obrazu, wystarczy jeszcze jedna linia:
Na szczęście działa to zarówno dla README.md, jak i stron Wiki GitHub.
źródło
Możemy to wykorzystać. Zmień lokalizację src ur img z folderu git i dodaj alternatywny tekst, jeśli img nie jest załadowany
źródło
Wystarczy przejść do Readme.mdpliku i użyć tego kodu.
<div align=”center”> [ Your content here ]</div>
pasuje do wszystkiego na stronie, a środek wyrównuje go zgodnie z wymiarami strony.źródło
Aby nieco rozszerzyć odpowiedź na obsługę lokalnych obrazów, po prostu zastąp
FILE_PATH_PLACEHOLDER
ścieżkę obrazu i sprawdź ją.źródło
Moim sposobem rozwiązania problemu z pozycjonowaniem obrazu było użycie atrybutów HTML:
Rozmiar obrazu został odpowiednio przeskalowany i wyśrodkowany, przynajmniej w moim lokalnym rendererze przeceny VS.
Następnie przekazałem zmiany do repozytorium i niestety zdałem sobie sprawę, że nie działa on dla pliku README.md GitHub . Niemniej jednak zostawię tę odpowiedź, ponieważ może pomóc komuś innemu.
W końcu zamiast tego użyłem starego dobrego tagu HTML:
Ale zgadnij co? Niektóre metody JS zastąpiły mój
style
atrybut! Próbowałem nawetclass
atrybutu i z tym samym rezultatem!Potem znalazłem następującą stronę gist, na której użyto jeszcze więcej oldschoolowego kodu HTML:
Ten działa dobrze, jednak chciałbym go zostawić bez dalszych komentarzy ...
źródło
„Czystym” podejściem do markdown, które może sobie z tym poradzić, jest dodanie obrazu do tabeli, a następnie wyśrodkowanie komórki:
Powinien generować HTML podobny do tego:
źródło
TLDR;
Użyj tego HTML / CSS, aby dodać i wyśrodkować obraz i ustawić jego rozmiar na 60% szerokości miejsca na ekranie w pliku znaczników, co zwykle jest dobrą wartością początkową:
Zmień
width
wartość CSS na dowolny procent lub usuń ją całkowicie, aby użyć domyślnego rozmiaru znacznika, który moim zdaniem wynosi 100% szerokości ekranu, jeśli obraz jest większy niż ekran, lub w przeciwnym razie jest to rzeczywista szerokość obrazu.Gotowy!
Lub czytaj dalej, aby uzyskać znacznie więcej informacji.
Oto różne opcje HTML i CSS, które doskonale działają w plikach Markdown:
1. Wyśrodkuj i skonfiguruj (zmień rozmiar) WSZYSTKIE obrazy w pliku przeceny:
Po prostu skopiuj i wklej to na górze pliku Markdown, aby wyśrodkować i zmienić rozmiar wszystkich obrazów w pliku (a następnie wstaw dowolne obrazy z normalną składnią Markdown):
Lub ten sam kod jak powyżej, ale ze szczegółowymi komentarzami HTML i CSS, aby dokładnie wyjaśnić, co się dzieje:
Teraz, czy wstawisz obraz za pomocą markdown:
Lub HTML w pliku przeceny:
... zostanie automatycznie wyśrodkowany i dopasowany do 60% szerokości widoku ekranu, jak opisano w komentarzach w HTML i CSS powyżej. (Oczywiście rozmiar 60% jest również bardzo łatwo zmienialny, a poniżej przedstawiam proste sposoby, aby zrobić to na zasadzie obraz po obrazie).
2. Wyśrodkuj i skonfiguruj obrazy indywidualnie dla każdego przypadku:
Niezależnie od tego, czy skopiowałeś i wkleiłeś powyższy
<style>
blok w górnej części pliku przeceny, zadziała to również, ponieważ zastępuje i ma pierwszeństwo przed ustawieniami stylu zakresu plików, które możesz ustawić powyżej:Możesz również sformatować go w wielu liniach, takich jak ten, i nadal będzie działać:
3. Oprócz wszystkich powyższych, możesz także tworzyć klasy stylów CSS, aby pomóc stylizować poszczególne obrazy:
Dodaj to wszystko na początku pliku przeceny.
Teraz twój
img
blok CSS ustawił domyślne ustawienie dla obrazów, które mają być wyśrodkowane i 60% szerokości przestrzeni ekranu, ale możesz użyć klasleftAlign
irightAlign
CSS, aby zastąpić te ustawienia dla poszczególnych obrazów.Na przykład ten obraz będzie wyśrodkowany i ma 60% rozmiaru (domyślnie ustawiłem powyżej):
Ten obraz zostanie wyrównany do lewej strony , z zawijaniem tekstu po prawej stronie, przy użyciu
leftAlign
klasy CSS, którą właśnie stworzyliśmy powyżej!Może to wyglądać tak:
Nadal możesz zastąpić dowolne z jego właściwości CSS za pomocą
style
atrybutu , takiego jak szerokość, jak poniżej:A teraz dostaniesz to:
4. Utwórz 3 klasy CSS, ale nie zmieniaj
img
domyślnych wartości przecenyInną opcją tego, co właśnie pokazaliśmy powyżej, w którym zmodyfikowaliśmy
img
property:value
ustawienia domyślne i utworzyliśmy 2 klasy, jest pozostawienie wszystkich domyślnychimg
właściwości Markdown w spokoju, ale utworzenie 3 niestandardowych klas CSS, takich jak to:Używaj ich oczywiście w ten sposób:
Zauważ, jak ręcznie ustawiłem
width
właściwość za pomocąstyle
powyższego atrybutu CSS , ale gdybym miał coś bardziej skomplikowanego, co chciałem zrobić, mógłbym również utworzyć dodatkowe klasy, dodając je wewnątrz<style>...</style>
powyższego bloku:Teraz możesz przypisać wiele klas do tego samego obiektu, jak ten. Po prostu oddziel nazwy klas spacjami, NIE przecinkami . W przypadku sprzecznych ustawień uważam, że którekolwiek ustawienie będzie ostatnie, będzie obowiązywać, zastępując wszelkie wcześniej ustawione ustawienia. Powinno tak być również w przypadku, gdy ustawisz te same właściwości CSS wiele razy w tej samej klasie CSS lub w tym samym
style
atrybucie HTML .5. Skonsoliduj wspólne ustawienia w klasach CSS:
Ostatnią sztuczką jest ta, której nauczyłem się w tej odpowiedzi tutaj: Jak używać CSS do stylizowania wielu obrazów w inny sposób? . Jak widać powyżej, wszystkie 3
align
klasy CSS ustawiają szerokość obrazu na 60%. Dlatego to wspólne ustawienie można ustawić jednocześnie tak, jak chcesz, a następnie możesz ustawić szczegółowe ustawienia dla każdej klasy:Więcej szczegółów:
1. Moje przemyślenia na temat HTML i CSS w Markdown
Jeśli o mnie chodzi, wszystko, co można zapisać w dokumencie Markdown i uzyskać pożądany wynik, to wszystko, czego szukamy, a nie jakaś składnia „czystego Markdown”.
W C i C ++ kompilator kompiluje się do kodu asemblera, a następnie asembluje się do binarnego. Czasami jednak potrzebna jest kontrola niskiego poziomu, którą może zapewnić tylko zestaw, a więc można napisać zestaw wbudowany bezpośrednio w pliku źródłowym C lub C ++. Asembler jest językiem „niższego poziomu” i można go pisać bezpośrednio w C i C ++.
Tak też jest ze zniżką. Markdown to język wysokiego poziomu, który jest interpretowany do HTML i CSS. Jednak tam, gdzie potrzebujemy dodatkowej kontroli, możemy po prostu „wstawić” niższy poziom HTML i CSS bezpośrednio do naszego pliku przeceny i nadal będzie on interpretowany poprawnie. W pewnym sensie zatem HTML i CSS są poprawną składnią „markdown”.
Tak więc, aby wyśrodkować obraz na przecenie, użyj HTML i CSS.
2. Standardowe wstawianie obrazu w przecenach:
Jak dodać podstawowy obraz w przecenie z domyślnym formatowaniem HTML i CSS „za kulisami”:
Ta obniżka:
Wyprodukuje ten wynik:
Oto mój heksakopter strzelający ogniem .
Możesz również opcjonalnie dodać opis w nawiasach kwadratowych otwierających. Szczerze mówiąc, nie jestem nawet pewien, co to robi, ale być może jest konwertowany na atrybut elementu HTML
<img>
alt
, który jest wyświetlany w przypadku, gdy obraz nie może się załadować, i może być czytany przez czytniki ekranu dla osób niewidomych. A więc to przecena:wygeneruje również ten wynik:
3. Więcej szczegółów na temat tego, co dzieje się w HTML / CSS podczas centrowania i zmiany rozmiaru obrazu w znaczniku:
Wyśrodkowanie obrazu w systemie Markdown wymaga użycia dodatkowej kontroli, którą HTML i CSS mogą nam dać bezpośrednio. Możesz wstawić i wyśrodkować indywidualny obraz w ten sposób:
Oto więcej informacji. o tym, co się tutaj dzieje:
<img
Część powyższego kodu HTML jest „ rozpocząć tag ”, a>
na końcu jest HTML „ tag end ”.img
„ element ” HTML .img
„tags” / „elementy” są używane do wstawiania obrazów w HTML.style=""
jest CSSproperty:value
klucz-wartość „ deklaracja ”.;
), podczas gdy każdy „atrybut” HTML w tym „elemencie” jest oddzielony spacją ().
src
istyle
te.alt
jest opcjonalny.style
atrybutu, który akceptuje CSS stylizacji, najważniejsze deklaracje są wszystkie 4 pokazują, że:display:block
,float:none
,margin-left:auto
, imargin-right:auto
.float
właściwości , możesz pominąć tę deklarację, ale i tak warto ją mieć na wszelki wypadek./* my comment */
).Bibliografia:
źródło
To naprawdę bardzo proste.
Biorąc to pod uwagę, możesz zastosować to do składni img.
źródło