2013-10-13 9 views
5

私は、twitterブートストラップを使っていくつかの内容でdivを設計しました。このページのスニペットを生成して、他のユーザーがこのスニペットを自分のページにコピー・ペーストできるようにしたいのです。しかし、問題は、すべてがブートストラップを使用するとは保証されていないため、このスニペットはブートストラップ以外のサイトでは動作しません。CDNを使って、div専用ブートストラップを適用することはできますか?

カスタムCSSクラスも追加しました。スタイルタグを使用してスニペットでこれらのスタイルを追加できます。ブートストラップスタイルを同じ方法で追加したい場合、それは巨大になります。

特定のdivにブートストラップCDNを使用することはできますか?ブートストラップのスタイリングがそのページの他の部分に影響することはありません。 他にもアプローチはありますか?ここで

は抜粋です:

<div id="login-form"> 
    <div class="row row-padded"> 
     <div class="col-md-7"> 
      <form role="form"> 
       <div id="title" class="section-header login-form-label">Login</div> 
       <div class="form-group"> 
        <label for="exampleInputEmail1" class="login-form-label">Email address</label> 
        <input type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter email"> 
       </div> 
       <div class="form-group"> 
        <label for="exampleInputPassword1" class="login-form-label">Password</label> 
        <input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password"> 
       </div> 

       <button type="button" class="btn btn-primary" id="primary-button-text">Primary</button> 

       <div><a href="#" class="">Forgot password?</a></div> 
       <div><a href="#" class="" id="register-link-text">New here? Create an Account</a></div> 

      </form> 
     </div> 
    </div> 
+0

[特定の要素にのみCSSスタイルを適用する](http://stackoverflow.com/questions/11831346/applying-css-styles-only-to-certain-elements)の可能な複製 –

答えて

3

私はあなただけのdivにスタイルを適用することはできません。原因あなたがCDNでこれを行うことができるとは思わない(インラインフレームを試してみてください?)。

あなたができることは、最小限のCSSをコンパイルし、divに適用することです。

GithubからBootstrapの最新バージョンをダウンロードしてください。

コピーしますようにそれほどに#ログイン・フォームのサブクラスに使用するすべてのブートストラップクラス:

#login-form .row {.row;} 

bootstrap.lessの最後に、この行を追加し、このファイルをコンパイルし、最新のコピー結果としてCSSのライン私が使用してお使いたとえば#login-form

#login-form .row {.row;} 
#login-form .col-md-7 {.col-md-7; 
    float: left; 
    width: percentage((7/@grid-columns)); 
} 
#login-form .form-group {.form-group} 
#login-form .btn {.btn;} 
#login-form .btn-primary {.btn-primary;} 
#login-form .form-control {.form-control;} 

これは私になりますN:

#login-form .row:after{clear:both} 
#login-form .row:before,#login-form .row:after{content:" ";display:table;} 
#login-form .row:after{clear:both} 
#login-form .col-md-7{position:relative;min-height:1px;padding-left:15px;padding-right:15px;float:left;width:58.333333333333336%} 
#login-form .form-group{margin-bottom:15px} 
#login-form .btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:14px;line-height:1.428571429;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}#login-form .btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px} 
#login-form .btn:hover,#login-form .btn:focus{color:#333;text-decoration:none} 
#login-form .btn:active,#login-form .btn.active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)} 
#login-form .btn.disabled,#login-form .btn[disabled],fieldset[disabled] #login-form .btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none} 
#login-form .btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}#login-form .btn-primary:hover,#login-form .btn-primary:focus,#login-form .btn-primary:active,#login-form .btn-primary.active,.open .dropdown-toggle#login-form .btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e} 
#login-form .btn-primary:active,#login-form .btn-primary.active,.open .dropdown-toggle#login-form .btn-primary{background-image:none} 
#login-form .btn-primary.disabled,#login-form .btn-primary[disabled],fieldset[disabled] #login-form .btn-primary,#login-form .btn-primary.disabled:hover,#login-form .btn-primary[disabled]:hover,fieldset[disabled] #login-form .btn-primary:hover,#login-form .btn-primary.disabled:focus,#login-form .btn-primary[disabled]:focus,fieldset[disabled] #login-form .btn-primary:focus,#login-form .btn-primary.disabled:active,#login-form .btn-primary[disabled]:active,fieldset[disabled] #login-form .btn-primary:active,#login-form .btn-primary.disabled.active,#login-form .btn-primary[disabled].active,fieldset[disabled] #login-form .btn-primary.active{background-color:#428bca;border-color:#357ebd} 
#login-form .form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s}#login-form .form-control:-moz-placeholder{color:#999} 
#login-form .form-control::-moz-placeholder{color:#999} 
#login-form .form-control:-ms-input-placeholder{color:#999} 
#login-form .form-control::-webkit-input-placeholder{color:#999} 
#login-form .form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6)} 
#login-form .form-control[disabled],#login-form .form-control[readonly],fieldset[disabled] #login-form .form-control{cursor:not-allowed;background-color:#eee} 
textarea#login-form .form-control{height:auto} 

はあなたのコードでこれを参照してください:http://jsfiddle.net/gDraJ/

注いくつか以下のルールが(私はそれらをコピーする方法がわからない)メディアクエリに包まれています。したがって、この例では、私が使用#ログインフォーム.COL-MD-7 {.COL-MD-7;}

#login-form .col-md-7 {.col-md-7; 
    float: left; 
    width: percentage((7/@grid-columns)); 
} 

期待されるべきです。

フィドルの例では、私も追加します。

#login-form 
{ 
    -webkit-box-sizing: content-box; 
    -moz-box-sizing: content-box; 
     box-sizing: content-box; 
} 

参照:Twitter's Bootstrap 3 with ShareThis widgetWhy did Bootstrap 3 switch to box-sizing: border-box?

更新理論的には あなたも#login-form{}内bootstrap.lessのすべてのコンテンツをラップし、これをコンパイルすることができます。結果として得られるCSSは#login-formにのみBootstrapのすべてのルールを適用します。もちろん、このCSSを外部のURLに提供することもできます。

0

私は別の解決策を見つけることをお勧めしますが、これを行うことが可能である:

使用少ない(http://lesscss.org/)をクライアント上、およびCDNからソースのCSSを使用します。以下のファイルを作成します。

これはもちろん、パフォーマンスは良くありませんが、望むように動的に動作します。

関連する問題