Dus wat is er aan de hand bij het migreren van Bootstrap 2 naar Bootstrap 3? In werkelijkheid niet veel.
Ondanks de vele veranderingen, is er nog steeds geen enorm bedrag voor u om daadwerkelijk te veranderen, en de wijzigingen die u hoeft aan te brengen zijn over het algemeen alleen hernamen van klassen, indien van toepassing.
Een van de dingen die je zou willen doen, vooral als je BS alleen hebt gebruikt voor algemene webapp-ontwikkeling en niet mobiel of een vorm van responsief ontwerp, is het uitschakelen van de responsieve functies in BS3.
Dit is gemakkelijk genoeg om te doen, maar helemaal niet aanbevolen.
U kunt dit als volgt bereiken:
meta
tag die de breedte van het apparaat en andere initiële formaatinformatie bevat naar de kop van uw document. breedte
op uw elementen die zijn gemarkeerd met een klasse van houder
, en zorg ervoor dat je gebruikt style = 'width: xxx! important'
wanneer je dat doet. navbar
constructies in uw document. col-XS- *
klassen en geen van de andere vier niveaus. Als u IE8 en IE9 target, moet u nog steeds controleren of u respons.js gebruikt, zelfs als u responsiviteit uitschakelt zoals uiteengezet.
Zoals ik al eerder heb vermeld, zijn er tussen de twee versies veel wijzigingen in de naam van de klas aangebracht en zijn veel klassen verouderd en ingetrokken.
Een ding dat (en al is als je Stack Overflow bekijkt) voor veel mensen een verrassing is, is dat de vloeistofbreedteklassen worden ingetrokken.
Als u in versie 2 een elastische container met volledige breedte wilde hebben, moest u iets als het volgende doen:
Een krantenkop
Een paragraaftekst
In versie 3 de houder
en rij-vloeistof
klassen bestaan niet meer.
Dus hoe krijg je een vloeistofcontainer? Eenvoudig: jij niet.
In plaats van je inhoud in te pakken in een houder
en dan a rij
, je wikkelt ze eenvoudigweg nergens in.
U kunt het rastersysteem nog steeds gebruiken om omhullende containers voor uw inhoud aan te brengen, zodat de dingen netjes aansluiten bij het raster van Bootstrap, maar u hoeft niet langer een container rond die verzamelingen Sterker nog, als je gebruikt De grootste verandering daarna is het rastersysteem zelf. In versie 2 hebt u normaal gesproken rasters gemaakt op de volgende manier: Deze code geeft je twee containers die netjes de twaalf rastervakken horizontaal vullen die alle lay-outs hadden (meestal een zijbalk). In versie 3 is het "medium level" -raster nu het equivalent van de v2 Hoewel versie 2 slechts één niveau van rastergrootte had, heeft versie 3 nu vier niveaus. Elk niveau is afgestemd op het verwachte hoofddoelapparaat dat u verwacht dat uw eindproduct zal gebruiken. Deze rastereenheden worden nu als volgt genoemd: Mediaqueries worden intern door BS3 gebruikt om te beslissen welke van de bovengenoemde netwerkklassen moet worden gebruikt en de verschillende groottes worden als volgt gedefinieerd: U kunt voor BS3 meerdere versies van uw raster coderen om te beslissen welk type moet worden gebruikt bij het targeten van meerdere beeldschermen. Bijvoorbeeld als u het volgende deed: BS3 zal de containers naar behoefte verbergen en zichtbaar maken, afhankelijk van de breedte van het display van het apparaat en de werking van de mediaquery's. Net als bij eerdere versies van het rastersysteem, zijn er 12 kolommen horizontaal over alle verschillende grootten, dus ongeacht welke raster wordt weergegeven, krijgt u altijd nog steeds 12 rasters op elk apparaat. De kolombreedte zelf verandert echter wel, dus u moet mogelijk de inhoud in die rasters plannen om te profiteren van de verschillende grootten. De maten voor elk van hen zijn als volgt: De gootmarge blijft in alle gevallen op 15 pixels aan elke kant van de rastercontainer, wat een totale lengte van 30 pixels oplevert. Deze grootte is consistent, ongeacht het rastergrootte niveau dat u gebruikt. Nesten en verschuivingen werken zoals voorheen, maar net als bij de rasters zelf, door een kleine hernoeming van de gebruikte klassen. Gebruik gewoon een offset om een offset toe te passen Nesten gebeurt eenvoudig door containers te nestelen onder controle van de De volgende voorbeelden laten de juiste manier zien om beide technieken te bereiken: In dit voorbeeld krijgt u een raster dat er als volgt uitziet: Dit voorbeeld geeft u een indeling als volgt: BS3 brengt ook iets nieuws aan de tafel als het gaat om compenseren en nesten, en dat is iets dat kolomorden wordt genoemd. Als u wilt dat uw kolommen in een andere volgorde worden gepresenteerd dan hoe u ze in uw HTML-document definieert, dan kunt u de nieuwe gebruiken Als u de documenten in uw document als verwacht rendert, krijgt u het volgende: Als u echter de bovenstaande code wijzigt om push- en pull-modifiers als volgt toe te voegen: Wanneer u uw document rendert, zou uw lay-out als volgt moeten veranderen: Eindelijk, als u de Minder CSS-bronversies van Bootstrap, u hebt volledige controle over de rastergroottes door de volgende variabelen te wijzigen: Dus nu we het nieuwe rastersysteem onder controle hebben, is er nog iets dat u moet weten? Hoe slimmer je misschien denkt, "Maar dat is gek - met al die verschillende sets van Laten we de code in het vorige codevoorbeeld 4 nemen en het herschrijven om dit op de aanbevolen manier te doen: Ok, dus je zou kunnen eindigen met de klassenlijst van de hel op jouw elementen, maar een set markeringen zal zich aanpassen aan alle weergaveformaten, en de grootte van het formaat aanpassen waar nodig. Dit werkt ook met de verschillende klassen voor offset, volgorde en nesten. Naast de onderwerpen die we al hebben besproken, moeten de volgende klassenamen ook worden gewijzigd als u migreert van een V2-indeling naar een V3-indeling (Opmerking: de volgende tabel is rechtstreeks overgenomen uit de Bootstrap 3-documenten en was correct op het moment van schrijven. Naarmate Bootstrap ouder wordt, kan dit echter niet zo blijven). Zoals eerder vermeld, zijn de meeste veranderingen aangebracht om overeenstemming te brengen met het naamgevingsschema dat door de verschillende klassen wordt gebruikt. Maar veel van hen zijn ook hernoemd omdat hun algemene doel is veranderd. We zullen in meer detail ingaan op komende tutorials in deze serie, maar voor nu, als je een conversie uitvoert, zal tabel 2 je alles vertellen wat je nodig hebt om een v2-lay-out naar v3 te retargeten. U kunt overwegen een aangepaste taak te gebruiken in zoiets als een Grunt.js-taak, zodat wanneer u uw buildsysteem uitvoert, deze wijzigingen automatisch worden uitgevoerd. Op deze manier kunnen je ontwikkelaars productief blijven met v2 en geleidelijk de overstap maken naar v3. Dus wat er precies is toegevoegd aan Bootstrap is nieuw en wat is precies verwijderd? We beginnen met wat is verwijderd en we bespreken wat er in meer detail is toegevoegd in de zelfstudie over "CSS-functies gewijzigd". Het is belangrijker dat je weet wat er in deze tutorial is verwijderd, omdat dit de tutorial is die je ' zal waarschijnlijk verwijzen naar bij het migreren van uw lay-outs Eerst beginnen we met wat er is verwijderd op formulieren, en helaas is dat nogal wat. We hebben niet langer een specifiek type voor een zoekformulier Ook weg is de klasse die doorgaans wordt gebruikt om validatiefouten weer te geven, Doorgaan met vormen, de belangrijkste Vanuit het oogpunt van individuele controle, de Voor tabbladen, de Logeren met tabbladen, de klasse om met inhoud te werken in een op pillen gebaseerde tabbladinstelling is ook verwijderd, wat betekent dat Eindelijk, de verschillende In de meeste gevallen zijn er geen directe equivalenten in v3 voor deze klassen, hoewel er enkele overeenkomsten in andere klassen zijn die nuttig kunnen zijn. Bijvoorbeeld, In de migratiegids op de Bootstrap 3-website staat een snel overzicht van al deze zaken. Deze tutorial staat voor een hoofdstuk van Bootstrap 3 Shortlyly, een gratis eBoek van het team van Syncfusion.houder
en rij
(de niet-vloeibare versies bestaan nog steeds), dan komt u automatisch met al uw inhoud in de 1024-pixel centrale kolom en kunt u de volledige paginabreedte gebruiken als u dat niet doet. Het rastersysteem migreren
span
klassen, dus om de vorige code voor V3 te herschrijven, doe je eenvoudig het volgende:
col-XS- *
col-sm *
col-MD-*
col-LG-*
col-XS- *
= Auto sizing, geen vaste dimensies col-sm *
= 60 pixels col-MD-*
= 78 pixels col-LG-*
= 95 pixels col-md-offset- *
, herinneren aan het vervangen van de md
met xs
, sm
, of lg
zoals nodig, afhankelijk van uw rastergrootte. col-XX *
klassen in elkaar, waar ze het formaat wijzigen en zich gedragen zoals in voorgaande BS-versies.
col-XX-pull-*
en col-XX-push *
klassen om uw gridlay-outs in de door u gewenste volgorde te pushen of te trekken. Bijvoorbeeld:
@ Roostervormige columns
: regelt het aantal roosters horizontaal (standaard 12) @ Roostervormige goot breedte
: de totale marge rond elk raster (standaard 30 pixels) @ Roostervormige float-breekpunt
: de minimale grootte waaronder we "extra kleine" apparaten hebben (standaard 768 pixels) col-xx-xx
klassen, allemaal voor weergave van verschillende formaten, ik kan net zo goed vier verschillende sites maken, met vier verschillende resoluties in het achterhoofd! "Om eerlijk te zijn, zou ik het je niet kwalijk nemen, behalve één ding: elk van deze nieuwe lay-outafmetingen zijn ontworpen om tegelijkertijd aan dezelfde markup te werken en dezelfde ruimte in te nemen. Andere migraties
Bootstrap versie 2 klassenaam Bootstrap versie 3 klassenaam .Besturing group.warning
.Besturing group.error
.Besturing group.success
.-vorm group.has- *
.checkbox.inline
.radio.inline
.checkbox-inline
.radio-inline
.input-prepend
.input-append
.input-groep
.toevoeging
.input-groep-addon
.img-polaroid
.img-thumbnail
ul.unstyled
.list-ongestijlde
ul.inline
.list-inline
.gedempt
.-Text gedempt
.label
.label .label-standaard
.label-belang
.label-gevaar
.text-error
.text-gevaar
.tabel. fout
.tabel. gevaar
.bar
.voortgangsbalk
.bar-*
.voortgangsbalk-*
.accordeon
.panel-groep
.accordeon-groep
.paneel. panel-standaard
.accordeon-titel
.panel-titel
.accordeon-body
.paneelvormig collapse
.accordeon-binnen
.paneelvormig body
vorm-search
, en de gearceerde balk die meestal te vinden is aan de voet van een formulier form-acties
is ook verouderd in v3. controle-group-info
, en zijn tegenhanger, help-inline
. Geen van deze vier klassen heeft een aanbevolen vervanging in de v3-codebasis, wat betekent dat om equivalenten ervan te construeren, u andere elementen en klassen moet gebruiken waar van toepassing. controls
De klasse die wordt gebruikt om complete besturingssets in te pakken, is verdwenen controles rijen
. In plaats daarvan wordt u geadviseerd om te gebruiken rij
of de nieuwe vorm-groep
klasse. Formulieren hebben ook de meeste klassen van de sortering verloren; de klassen met een vaste grootte, zoals input-mini
, input-small
, input-medium
, input-large
, input-xlarge
, en input-XXLarge
zijn nu allemaal verdwenen, samen met de blokniveau controleklasse input-blokniveau
. In plaats daarvan wordt u nu geadviseerd om uw formulierelementgroottes te gebruiken met vorm-control
in combinatie met de nieuwe maten en lay-outs die beschikbaar zijn in het rastersysteem. omgekeerde
klassen zijn verwijderd van knoppen en andere soortgelijke besturingselementen, en we zijn ook de dropdown-submenu
klasse in het voordeel van het gebruik van gesplitste vervolgkeuzeknoppen om dezelfde functionaliteit te creëren. tabs links
, tabs-rechts
, en tabs-below
klassen bestaan niet meer, wat betekent dat we nu alleen de mogelijkheid hebben om tabs bovenaan de inhoud te plaatsen, links uitgelijnd. pill-pane
en pill-inhoud
zou nu de algemene moeten gebruiken tab-inhoud
en tab-pane
klassen. navbar
klassen zijn niet zonder slachtoffers: navbar-binnen
, navigatiebalk verticaal
, nav-lijst
, en nav-header
maken geen deel meer uit van het raamwerk. nav-lijst
en nav-header
kan opnieuw worden gemaakt met behulp van Lijst
groepen.